# Models

## The AttachedVolumes object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The DatacenterElementMetadata object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}}}}}
```

## The KubernetesNodeMetadata object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodeMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"The resource entity tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity tags are also added as 'ETag' response headers to requests that do not use the 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The date the resource was created.","format":"date-time","readOnly":true},"lastModifiedDate":{"type":"string","description":"The date the resource was last modified.","format":"date-time","readOnly":true},"state":{"type":"string","description":"The resource state.","readOnly":true,"enum":["PROVISIONING","PROVISIONED","READY","TERMINATING","REBUILDING","BUSY"]},"lastSoftwareUpdatedDate":{"type":"string","description":"The date when the software on the node was last updated.","format":"date-time","readOnly":true}}}}}}
```

## The S3KeyMetadata object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"S3KeyMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the Object storage key was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the Object storage key.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the Object storage key was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the Object storage key.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the Object storage key.","readOnly":true}}}}}}
```

## The NoStateMetaData object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NoStateMetaData":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true}}}}}}
```

## The ImageAlias object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ImageAlias":{"type":"object","properties":{"imageAlias":{"type":"string","description":"Image alias of an image to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."}}}}}}
```

## The VolumeProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true}}}}
```

## The VolumeId object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"VolumeId":{"type":"object","properties":{"id":{"type":"string","description":"The Id of an existing volume that needs to be attached to the server."}}}}}}
```

## The Volume object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true}}}}
```

## The VolumePropertiesPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"VolumePropertiesPost":{"required":["properties"],"type":"object","properties":{"properties":{"allOf":[{"$ref":"#/components/schemas/VolumeProperties"},{"$ref":"#/components/schemas/ImageAlias"}]}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ImageAlias":{"type":"object","properties":{"imageAlias":{"type":"string","description":"Image alias of an image to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."}}}}}}
```

## The Cdroms object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The Image object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The ImageProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The ContractProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ContractProperties":{"type":"object","properties":{"contractNumber":{"type":"integer","description":"The contract number.","format":"int64","readOnly":true},"owner":{"type":"string","description":"The contract owner's user name.","readOnly":true},"status":{"type":"string","description":"The contract status.","readOnly":true},"regDomain":{"type":"string","description":"The registration domain of the contract.","readOnly":true},"resourceLimits":{"$ref":"#/components/schemas/ResourceLimits"}}},"ResourceLimits":{"required":["coresPerContract","coresPerServer","coresProvisioned","dasVolumeProvisioned","hddLimitPerContract","hddLimitPerVolume","hddVolumeProvisioned","k8sClusterLimitTotal","k8sClustersProvisioned","natGatewayLimitTotal","natGatewayProvisioned","nlbLimitTotal","nlbProvisioned","ramPerContract","ramPerServer","ramProvisioned","reservableIps","reservedIpsInUse","reservedIpsOnContract","ssdLimitPerContract","ssdLimitPerVolume","ssdVolumeProvisioned","securityGroupsPerVdc","securityGroupsPerResource","rulesPerSecurityGroup"],"type":"object","properties":{"coresPerServer":{"type":"integer","description":"The maximum number of CPU cores per server.","format":"int32"},"coresPerContract":{"type":"integer","description":"The maximum number of CPU cores per contract.","format":"int32"},"coresProvisioned":{"type":"integer","description":"The number of CPU cores provisioned.","format":"int32"},"ramPerServer":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned for a particular server under this contract.","format":"int32"},"ramPerContract":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned under this contract.","format":"int32"},"ramProvisioned":{"type":"integer","description":"The amount of RAM (in MB) provisioned under this contract.","format":"int32"},"hddLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an idividual hard disk volume.","format":"int64"},"hddLimitPerContract":{"type":"integer","description":"The maximum amount of disk space (in MB) that can be provided under this contract.","format":"int64"},"hddVolumeProvisioned":{"type":"integer","description":"The amount of hard disk space (in MB) that is currently provisioned.","format":"int64"},"ssdLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an individual solid state disk volume.","format":"int64"},"ssdLimitPerContract":{"type":"integer","description":"The maximum amount of solid state disk space (in MB) that can be provisioned under this contract.","format":"int64"},"ssdVolumeProvisioned":{"type":"integer","description":"The amount of solid state disk space (in MB) that is currently provisioned.","format":"int64"},"dasVolumeProvisioned":{"type":"integer","description":"The amount of DAS disk space (in MB) in a Cube server that is currently provisioned.","format":"int64"},"reservableIps":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved by this customer across contracts.","format":"int32"},"reservedIpsOnContract":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved for this contract.","format":"int32"},"reservedIpsInUse":{"type":"integer","description":"The number of static public IP addresses in use.","format":"int32"},"k8sClusterLimitTotal":{"type":"integer","description":"The maximum number of Kubernetes clusters that can be created under this contract.","format":"int32"},"k8sClustersProvisioned":{"type":"integer","description":"The amount of Kubernetes clusters that is currently provisioned.","format":"int32"},"nlbLimitTotal":{"type":"integer","description":"The NLB total limit.","format":"int32"},"nlbProvisioned":{"type":"integer","description":"The NLBs provisioned.","format":"int32"},"natGatewayLimitTotal":{"type":"integer","description":"The NAT Gateway total limit.","format":"int32"},"natGatewayProvisioned":{"type":"integer","description":"The NAT Gateways provisioned.","format":"int32"},"securityGroupsPerVdc":{"type":"integer","description":"The maximum number of security groups per VDC.","format":"int32"},"securityGroupsPerResource":{"type":"integer","description":"The maximum number of security groups that can be attached to a NIC or a VM individually. For example, a user can have maximum 10 security groups per NIC and 10 per VM.","format":"int32"},"rulesPerSecurityGroup":{"type":"integer","description":"The maximum number of rules per security group.","format":"int32"}}}}}}
```

## The Contract object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Contract":{"required":["properties"],"type":"object","properties":{"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"properties":{"$ref":"#/components/schemas/ContractProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"ContractProperties":{"type":"object","properties":{"contractNumber":{"type":"integer","description":"The contract number.","format":"int64","readOnly":true},"owner":{"type":"string","description":"The contract owner's user name.","readOnly":true},"status":{"type":"string","description":"The contract status.","readOnly":true},"regDomain":{"type":"string","description":"The registration domain of the contract.","readOnly":true},"resourceLimits":{"$ref":"#/components/schemas/ResourceLimits"}}},"ResourceLimits":{"required":["coresPerContract","coresPerServer","coresProvisioned","dasVolumeProvisioned","hddLimitPerContract","hddLimitPerVolume","hddVolumeProvisioned","k8sClusterLimitTotal","k8sClustersProvisioned","natGatewayLimitTotal","natGatewayProvisioned","nlbLimitTotal","nlbProvisioned","ramPerContract","ramPerServer","ramProvisioned","reservableIps","reservedIpsInUse","reservedIpsOnContract","ssdLimitPerContract","ssdLimitPerVolume","ssdVolumeProvisioned","securityGroupsPerVdc","securityGroupsPerResource","rulesPerSecurityGroup"],"type":"object","properties":{"coresPerServer":{"type":"integer","description":"The maximum number of CPU cores per server.","format":"int32"},"coresPerContract":{"type":"integer","description":"The maximum number of CPU cores per contract.","format":"int32"},"coresProvisioned":{"type":"integer","description":"The number of CPU cores provisioned.","format":"int32"},"ramPerServer":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned for a particular server under this contract.","format":"int32"},"ramPerContract":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned under this contract.","format":"int32"},"ramProvisioned":{"type":"integer","description":"The amount of RAM (in MB) provisioned under this contract.","format":"int32"},"hddLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an idividual hard disk volume.","format":"int64"},"hddLimitPerContract":{"type":"integer","description":"The maximum amount of disk space (in MB) that can be provided under this contract.","format":"int64"},"hddVolumeProvisioned":{"type":"integer","description":"The amount of hard disk space (in MB) that is currently provisioned.","format":"int64"},"ssdLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an individual solid state disk volume.","format":"int64"},"ssdLimitPerContract":{"type":"integer","description":"The maximum amount of solid state disk space (in MB) that can be provisioned under this contract.","format":"int64"},"ssdVolumeProvisioned":{"type":"integer","description":"The amount of solid state disk space (in MB) that is currently provisioned.","format":"int64"},"dasVolumeProvisioned":{"type":"integer","description":"The amount of DAS disk space (in MB) in a Cube server that is currently provisioned.","format":"int64"},"reservableIps":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved by this customer across contracts.","format":"int32"},"reservedIpsOnContract":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved for this contract.","format":"int32"},"reservedIpsInUse":{"type":"integer","description":"The number of static public IP addresses in use.","format":"int32"},"k8sClusterLimitTotal":{"type":"integer","description":"The maximum number of Kubernetes clusters that can be created under this contract.","format":"int32"},"k8sClustersProvisioned":{"type":"integer","description":"The amount of Kubernetes clusters that is currently provisioned.","format":"int32"},"nlbLimitTotal":{"type":"integer","description":"The NLB total limit.","format":"int32"},"nlbProvisioned":{"type":"integer","description":"The NLBs provisioned.","format":"int32"},"natGatewayLimitTotal":{"type":"integer","description":"The NAT Gateway total limit.","format":"int32"},"natGatewayProvisioned":{"type":"integer","description":"The NAT Gateways provisioned.","format":"int32"},"securityGroupsPerVdc":{"type":"integer","description":"The maximum number of security groups per VDC.","format":"int32"},"securityGroupsPerResource":{"type":"integer","description":"The maximum number of security groups that can be attached to a NIC or a VM individually. For example, a user can have maximum 10 security groups per NIC and 10 per VM.","format":"int32"},"rulesPerSecurityGroup":{"type":"integer","description":"The maximum number of rules per security group.","format":"int32"}}}}}}
```

## The Contracts object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Contracts":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Contract"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Contract":{"required":["properties"],"type":"object","properties":{"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"properties":{"$ref":"#/components/schemas/ContractProperties"}}},"ContractProperties":{"type":"object","properties":{"contractNumber":{"type":"integer","description":"The contract number.","format":"int64","readOnly":true},"owner":{"type":"string","description":"The contract owner's user name.","readOnly":true},"status":{"type":"string","description":"The contract status.","readOnly":true},"regDomain":{"type":"string","description":"The registration domain of the contract.","readOnly":true},"resourceLimits":{"$ref":"#/components/schemas/ResourceLimits"}}},"ResourceLimits":{"required":["coresPerContract","coresPerServer","coresProvisioned","dasVolumeProvisioned","hddLimitPerContract","hddLimitPerVolume","hddVolumeProvisioned","k8sClusterLimitTotal","k8sClustersProvisioned","natGatewayLimitTotal","natGatewayProvisioned","nlbLimitTotal","nlbProvisioned","ramPerContract","ramPerServer","ramProvisioned","reservableIps","reservedIpsInUse","reservedIpsOnContract","ssdLimitPerContract","ssdLimitPerVolume","ssdVolumeProvisioned","securityGroupsPerVdc","securityGroupsPerResource","rulesPerSecurityGroup"],"type":"object","properties":{"coresPerServer":{"type":"integer","description":"The maximum number of CPU cores per server.","format":"int32"},"coresPerContract":{"type":"integer","description":"The maximum number of CPU cores per contract.","format":"int32"},"coresProvisioned":{"type":"integer","description":"The number of CPU cores provisioned.","format":"int32"},"ramPerServer":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned for a particular server under this contract.","format":"int32"},"ramPerContract":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned under this contract.","format":"int32"},"ramProvisioned":{"type":"integer","description":"The amount of RAM (in MB) provisioned under this contract.","format":"int32"},"hddLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an idividual hard disk volume.","format":"int64"},"hddLimitPerContract":{"type":"integer","description":"The maximum amount of disk space (in MB) that can be provided under this contract.","format":"int64"},"hddVolumeProvisioned":{"type":"integer","description":"The amount of hard disk space (in MB) that is currently provisioned.","format":"int64"},"ssdLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an individual solid state disk volume.","format":"int64"},"ssdLimitPerContract":{"type":"integer","description":"The maximum amount of solid state disk space (in MB) that can be provisioned under this contract.","format":"int64"},"ssdVolumeProvisioned":{"type":"integer","description":"The amount of solid state disk space (in MB) that is currently provisioned.","format":"int64"},"dasVolumeProvisioned":{"type":"integer","description":"The amount of DAS disk space (in MB) in a Cube server that is currently provisioned.","format":"int64"},"reservableIps":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved by this customer across contracts.","format":"int32"},"reservedIpsOnContract":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved for this contract.","format":"int32"},"reservedIpsInUse":{"type":"integer","description":"The number of static public IP addresses in use.","format":"int32"},"k8sClusterLimitTotal":{"type":"integer","description":"The maximum number of Kubernetes clusters that can be created under this contract.","format":"int32"},"k8sClustersProvisioned":{"type":"integer","description":"The amount of Kubernetes clusters that is currently provisioned.","format":"int32"},"nlbLimitTotal":{"type":"integer","description":"The NLB total limit.","format":"int32"},"nlbProvisioned":{"type":"integer","description":"The NLBs provisioned.","format":"int32"},"natGatewayLimitTotal":{"type":"integer","description":"The NAT Gateway total limit.","format":"int32"},"natGatewayProvisioned":{"type":"integer","description":"The NAT Gateways provisioned.","format":"int32"},"securityGroupsPerVdc":{"type":"integer","description":"The maximum number of security groups per VDC.","format":"int32"},"securityGroupsPerResource":{"type":"integer","description":"The maximum number of security groups that can be attached to a NIC or a VM individually. For example, a user can have maximum 10 security groups per NIC and 10 per VM.","format":"int32"},"rulesPerSecurityGroup":{"type":"integer","description":"The maximum number of rules per security group.","format":"int32"}}}}}}
```

## The ResourceLimits object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourceLimits":{"required":["coresPerContract","coresPerServer","coresProvisioned","dasVolumeProvisioned","hddLimitPerContract","hddLimitPerVolume","hddVolumeProvisioned","k8sClusterLimitTotal","k8sClustersProvisioned","natGatewayLimitTotal","natGatewayProvisioned","nlbLimitTotal","nlbProvisioned","ramPerContract","ramPerServer","ramProvisioned","reservableIps","reservedIpsInUse","reservedIpsOnContract","ssdLimitPerContract","ssdLimitPerVolume","ssdVolumeProvisioned","securityGroupsPerVdc","securityGroupsPerResource","rulesPerSecurityGroup"],"type":"object","properties":{"coresPerServer":{"type":"integer","description":"The maximum number of CPU cores per server.","format":"int32"},"coresPerContract":{"type":"integer","description":"The maximum number of CPU cores per contract.","format":"int32"},"coresProvisioned":{"type":"integer","description":"The number of CPU cores provisioned.","format":"int32"},"ramPerServer":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned for a particular server under this contract.","format":"int32"},"ramPerContract":{"type":"integer","description":"The maximum amount of RAM (in MB) that can be provisioned under this contract.","format":"int32"},"ramProvisioned":{"type":"integer","description":"The amount of RAM (in MB) provisioned under this contract.","format":"int32"},"hddLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an idividual hard disk volume.","format":"int64"},"hddLimitPerContract":{"type":"integer","description":"The maximum amount of disk space (in MB) that can be provided under this contract.","format":"int64"},"hddVolumeProvisioned":{"type":"integer","description":"The amount of hard disk space (in MB) that is currently provisioned.","format":"int64"},"ssdLimitPerVolume":{"type":"integer","description":"The maximum size (in MB) of an individual solid state disk volume.","format":"int64"},"ssdLimitPerContract":{"type":"integer","description":"The maximum amount of solid state disk space (in MB) that can be provisioned under this contract.","format":"int64"},"ssdVolumeProvisioned":{"type":"integer","description":"The amount of solid state disk space (in MB) that is currently provisioned.","format":"int64"},"dasVolumeProvisioned":{"type":"integer","description":"The amount of DAS disk space (in MB) in a Cube server that is currently provisioned.","format":"int64"},"reservableIps":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved by this customer across contracts.","format":"int32"},"reservedIpsOnContract":{"type":"integer","description":"The maximum number of static public IP addresses that can be reserved for this contract.","format":"int32"},"reservedIpsInUse":{"type":"integer","description":"The number of static public IP addresses in use.","format":"int32"},"k8sClusterLimitTotal":{"type":"integer","description":"The maximum number of Kubernetes clusters that can be created under this contract.","format":"int32"},"k8sClustersProvisioned":{"type":"integer","description":"The amount of Kubernetes clusters that is currently provisioned.","format":"int32"},"nlbLimitTotal":{"type":"integer","description":"The NLB total limit.","format":"int32"},"nlbProvisioned":{"type":"integer","description":"The NLBs provisioned.","format":"int32"},"natGatewayLimitTotal":{"type":"integer","description":"The NAT Gateway total limit.","format":"int32"},"natGatewayProvisioned":{"type":"integer","description":"The NAT Gateways provisioned.","format":"int32"},"securityGroupsPerVdc":{"type":"integer","description":"The maximum number of security groups per VDC.","format":"int32"},"securityGroupsPerResource":{"type":"integer","description":"The maximum number of security groups that can be attached to a NIC or a VM individually. For example, a user can have maximum 10 security groups per NIC and 10 per VM.","format":"int32"},"rulesPerSecurityGroup":{"type":"integer","description":"The maximum number of rules per security group.","format":"int32"}}}}}}
```

## The BalancedNics object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The DatacenterEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"DatacenterEntities":{"type":"object","properties":{"servers":{"$ref":"#/components/schemas/Servers"},"volumes":{"$ref":"#/components/schemas/Volumes"},"loadbalancers":{"$ref":"#/components/schemas/Loadbalancers"},"lans":{"$ref":"#/components/schemas/Lans"},"networkloadbalancers":{"$ref":"#/components/schemas/NetworkLoadBalancers"},"natgateways":{"$ref":"#/components/schemas/NatGateways"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}},"Volumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Loadbalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LoadbalancerProperties"},"entities":{"$ref":"#/components/schemas/LoadbalancerEntities"}}},"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}},"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lans":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Lan"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lan":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LanProperties"},"entities":{"$ref":"#/components/schemas/LanEntities"}}},"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}},"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/NetworkLoadBalancerEntities"}}},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}},"NatGateways":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGateway"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NatGateway":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"},"entities":{"$ref":"#/components/schemas/NatGatewayEntities"}}},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}},"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The DatacenterProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"DatacenterProperties":{"required":["location"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"A description for the datacenter, such as staging, production."},"location":{"type":"string","description":"The physical location where the datacenter will be created. This will be where all of your servers live. Property cannot be modified after datacenter creation (disallowed in update requests)."},"version":{"type":"integer","description":"The version of the data center; incremented with every change.","format":"int32","readOnly":true},"features":{"type":"array","description":"List of features supported by the location where this data center is provisioned.","readOnly":true,"items":{"type":"string"}},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the data center requires extra protection, such as two-step verification."},"cpuArchitecture":{"type":"array","description":"Array of features and CPU families available in a location","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"gpuArchitecture":{"type":"array","description":"The types of GPU cards that are available in the location where the data center is provisioned.","readOnly":true,"items":{"$ref":"#/components/schemas/GpuArchitectureProperties"}},"ipv6CidrBlock":{"type":"string","description":"This value is either 'null' or contains an automatically-assigned /56 IPv6 CIDR block if IPv6 is enabled on this virtual data center. It can neither be changed nor removed.","nullable":true,"readOnly":true},"defaultSecurityGroupId":{"type":"string","description":"Optional property to define the default security group of the datacenter.","format":"uuid"}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"GpuArchitectureProperties":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card."},"model":{"type":"string","description":"The model of the Graphics Processing Unit (GPU) card."}}}}}}
```

## The DatacenterPropertiesPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"DatacenterPropertiesPost":{"required":["location"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"A description for the datacenter, such as staging, production."},"location":{"type":"string","description":"The physical location where the datacenter will be created. This will be where all of your servers live. Property cannot be modified after datacenter creation (disallowed in update requests)."},"version":{"type":"integer","description":"The version of the data center; incremented with every change.","format":"int32","readOnly":true},"features":{"type":"array","description":"List of features supported by the location where this data center is provisioned.","readOnly":true,"items":{"type":"string"}},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the data center requires extra protection, such as two-step verification."},"cpuArchitecture":{"type":"array","description":"Array of features and CPU families available in a location","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"ipv6CidrBlock":{"type":"string","description":"This value is either 'null' or contains an automatically-assigned /56 IPv6 CIDR block if IPv6 is enabled on this virtual data center. It can neither be changed nor removed.","nullable":true,"readOnly":true},"createDefaultSecurityGroup":{"type":"boolean","description":"If true, a default security group, with predefined rules, will be created for the datacenter. Default value is false.","writeOnly":true}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}}}}}
```

## The DatacenterPropertiesPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"DatacenterPropertiesPut":{"required":["location"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"A description for the datacenter, such as staging, production."},"location":{"type":"string","description":"The physical location where the datacenter will be created. This will be where all of your servers live. Property cannot be modified after datacenter creation (disallowed in update requests)."},"version":{"type":"integer","description":"The version of the data center; incremented with every change.","format":"int32","readOnly":true},"features":{"type":"array","description":"List of features supported by the location where this data center is provisioned.","readOnly":true,"items":{"type":"string"}},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the data center requires extra protection, such as two-step verification."},"cpuArchitecture":{"type":"array","description":"Array of features and CPU families available in a location","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"ipv6CidrBlock":{"type":"string","description":"This value is either 'null' or contains an automatically-assigned /56 IPv6 CIDR block if IPv6 is enabled on this virtual data center. It can neither be changed nor removed.","nullable":true,"readOnly":true},"defaultSecurityGroupId":{"description":"This will become the default security group for the datacenter, replacing the old one if already exists.  This security group must already exists prior to this request. Provide this field only if the `createDefaultSecurityGroup` field is missing. You cannot provide both of them","type":"string","format":"uuid"},"createDefaultSecurityGroup":{"type":"boolean","description":"If this field is set on true and this datacenter has no default security group then a default security group, with predefined rules, will be created for this datacenter. Default value is false.  Provide this field only if the `defaultSecurityGroupId` field is missing. You cannot provide both of them","writeOnly":true}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}}}}}
```

## The Datacenter object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Datacenter":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/DatacenterProperties"},"entities":{"$ref":"#/components/schemas/DatacenterEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"DatacenterProperties":{"required":["location"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"A description for the datacenter, such as staging, production."},"location":{"type":"string","description":"The physical location where the datacenter will be created. This will be where all of your servers live. Property cannot be modified after datacenter creation (disallowed in update requests)."},"version":{"type":"integer","description":"The version of the data center; incremented with every change.","format":"int32","readOnly":true},"features":{"type":"array","description":"List of features supported by the location where this data center is provisioned.","readOnly":true,"items":{"type":"string"}},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the data center requires extra protection, such as two-step verification."},"cpuArchitecture":{"type":"array","description":"Array of features and CPU families available in a location","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"gpuArchitecture":{"type":"array","description":"The types of GPU cards that are available in the location where the data center is provisioned.","readOnly":true,"items":{"$ref":"#/components/schemas/GpuArchitectureProperties"}},"ipv6CidrBlock":{"type":"string","description":"This value is either 'null' or contains an automatically-assigned /56 IPv6 CIDR block if IPv6 is enabled on this virtual data center. It can neither be changed nor removed.","nullable":true,"readOnly":true},"defaultSecurityGroupId":{"type":"string","description":"Optional property to define the default security group of the datacenter.","format":"uuid"}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"GpuArchitectureProperties":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card."},"model":{"type":"string","description":"The model of the Graphics Processing Unit (GPU) card."}}},"DatacenterEntities":{"type":"object","properties":{"servers":{"$ref":"#/components/schemas/Servers"},"volumes":{"$ref":"#/components/schemas/Volumes"},"loadbalancers":{"$ref":"#/components/schemas/Loadbalancers"},"lans":{"$ref":"#/components/schemas/Lans"},"networkloadbalancers":{"$ref":"#/components/schemas/NetworkLoadBalancers"},"natgateways":{"$ref":"#/components/schemas/NatGateways"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}},"Volumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Loadbalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LoadbalancerProperties"},"entities":{"$ref":"#/components/schemas/LoadbalancerEntities"}}},"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}},"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lans":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Lan"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lan":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LanProperties"},"entities":{"$ref":"#/components/schemas/LanEntities"}}},"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}},"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/NetworkLoadBalancerEntities"}}},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}},"NatGateways":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGateway"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NatGateway":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"},"entities":{"$ref":"#/components/schemas/NatGatewayEntities"}}},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}},"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The DatacenterPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"DatacenterPost":{"required":["properties"],"type":"object","properties":{"properties":{"$ref":"#/components/schemas/DatacenterPropertiesPost"},"entities":{"$ref":"#/components/schemas/DatacenterEntities"}}},"DatacenterPropertiesPost":{"required":["location"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"A description for the datacenter, such as staging, production."},"location":{"type":"string","description":"The physical location where the datacenter will be created. This will be where all of your servers live. Property cannot be modified after datacenter creation (disallowed in update requests)."},"version":{"type":"integer","description":"The version of the data center; incremented with every change.","format":"int32","readOnly":true},"features":{"type":"array","description":"List of features supported by the location where this data center is provisioned.","readOnly":true,"items":{"type":"string"}},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the data center requires extra protection, such as two-step verification."},"cpuArchitecture":{"type":"array","description":"Array of features and CPU families available in a location","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"ipv6CidrBlock":{"type":"string","description":"This value is either 'null' or contains an automatically-assigned /56 IPv6 CIDR block if IPv6 is enabled on this virtual data center. It can neither be changed nor removed.","nullable":true,"readOnly":true},"createDefaultSecurityGroup":{"type":"boolean","description":"If true, a default security group, with predefined rules, will be created for the datacenter. Default value is false.","writeOnly":true}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"DatacenterEntities":{"type":"object","properties":{"servers":{"$ref":"#/components/schemas/Servers"},"volumes":{"$ref":"#/components/schemas/Volumes"},"loadbalancers":{"$ref":"#/components/schemas/Loadbalancers"},"lans":{"$ref":"#/components/schemas/Lans"},"networkloadbalancers":{"$ref":"#/components/schemas/NetworkLoadBalancers"},"natgateways":{"$ref":"#/components/schemas/NatGateways"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}},"Volumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Loadbalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LoadbalancerProperties"},"entities":{"$ref":"#/components/schemas/LoadbalancerEntities"}}},"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}},"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lans":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Lan"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lan":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LanProperties"},"entities":{"$ref":"#/components/schemas/LanEntities"}}},"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}},"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/NetworkLoadBalancerEntities"}}},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}},"NatGateways":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGateway"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NatGateway":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"},"entities":{"$ref":"#/components/schemas/NatGatewayEntities"}}},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}},"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The DatacenterPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"DatacenterPut":{"required":["properties"],"type":"object","properties":{"properties":{"$ref":"#/components/schemas/DatacenterPropertiesPut"},"entities":{"$ref":"#/components/schemas/DatacenterEntities"}}},"DatacenterPropertiesPut":{"required":["location"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"A description for the datacenter, such as staging, production."},"location":{"type":"string","description":"The physical location where the datacenter will be created. This will be where all of your servers live. Property cannot be modified after datacenter creation (disallowed in update requests)."},"version":{"type":"integer","description":"The version of the data center; incremented with every change.","format":"int32","readOnly":true},"features":{"type":"array","description":"List of features supported by the location where this data center is provisioned.","readOnly":true,"items":{"type":"string"}},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the data center requires extra protection, such as two-step verification."},"cpuArchitecture":{"type":"array","description":"Array of features and CPU families available in a location","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"ipv6CidrBlock":{"type":"string","description":"This value is either 'null' or contains an automatically-assigned /56 IPv6 CIDR block if IPv6 is enabled on this virtual data center. It can neither be changed nor removed.","nullable":true,"readOnly":true},"defaultSecurityGroupId":{"description":"This will become the default security group for the datacenter, replacing the old one if already exists.  This security group must already exists prior to this request. Provide this field only if the `createDefaultSecurityGroup` field is missing. You cannot provide both of them","type":"string","format":"uuid"},"createDefaultSecurityGroup":{"type":"boolean","description":"If this field is set on true and this datacenter has no default security group then a default security group, with predefined rules, will be created for this datacenter. Default value is false.  Provide this field only if the `defaultSecurityGroupId` field is missing. You cannot provide both of them","writeOnly":true}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"DatacenterEntities":{"type":"object","properties":{"servers":{"$ref":"#/components/schemas/Servers"},"volumes":{"$ref":"#/components/schemas/Volumes"},"loadbalancers":{"$ref":"#/components/schemas/Loadbalancers"},"lans":{"$ref":"#/components/schemas/Lans"},"networkloadbalancers":{"$ref":"#/components/schemas/NetworkLoadBalancers"},"natgateways":{"$ref":"#/components/schemas/NatGateways"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}},"Volumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Loadbalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LoadbalancerProperties"},"entities":{"$ref":"#/components/schemas/LoadbalancerEntities"}}},"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}},"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lans":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Lan"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lan":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LanProperties"},"entities":{"$ref":"#/components/schemas/LanEntities"}}},"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}},"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/NetworkLoadBalancerEntities"}}},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}},"NatGateways":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGateway"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NatGateway":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"},"entities":{"$ref":"#/components/schemas/NatGatewayEntities"}}},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}},"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The Datacenters object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Datacenters":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Datacenter"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Datacenter":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/DatacenterProperties"},"entities":{"$ref":"#/components/schemas/DatacenterEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"DatacenterProperties":{"required":["location"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"A description for the datacenter, such as staging, production."},"location":{"type":"string","description":"The physical location where the datacenter will be created. This will be where all of your servers live. Property cannot be modified after datacenter creation (disallowed in update requests)."},"version":{"type":"integer","description":"The version of the data center; incremented with every change.","format":"int32","readOnly":true},"features":{"type":"array","description":"List of features supported by the location where this data center is provisioned.","readOnly":true,"items":{"type":"string"}},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the data center requires extra protection, such as two-step verification."},"cpuArchitecture":{"type":"array","description":"Array of features and CPU families available in a location","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"gpuArchitecture":{"type":"array","description":"The types of GPU cards that are available in the location where the data center is provisioned.","readOnly":true,"items":{"$ref":"#/components/schemas/GpuArchitectureProperties"}},"ipv6CidrBlock":{"type":"string","description":"This value is either 'null' or contains an automatically-assigned /56 IPv6 CIDR block if IPv6 is enabled on this virtual data center. It can neither be changed nor removed.","nullable":true,"readOnly":true},"defaultSecurityGroupId":{"type":"string","description":"Optional property to define the default security group of the datacenter.","format":"uuid"}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"GpuArchitectureProperties":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card."},"model":{"type":"string","description":"The model of the Graphics Processing Unit (GPU) card."}}},"DatacenterEntities":{"type":"object","properties":{"servers":{"$ref":"#/components/schemas/Servers"},"volumes":{"$ref":"#/components/schemas/Volumes"},"loadbalancers":{"$ref":"#/components/schemas/Loadbalancers"},"lans":{"$ref":"#/components/schemas/Lans"},"networkloadbalancers":{"$ref":"#/components/schemas/NetworkLoadBalancers"},"natgateways":{"$ref":"#/components/schemas/NatGateways"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}},"Volumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Loadbalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Loadbalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LoadbalancerProperties"},"entities":{"$ref":"#/components/schemas/LoadbalancerEntities"}}},"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}},"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lans":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Lan"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Lan":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LanProperties"},"entities":{"$ref":"#/components/schemas/LanEntities"}}},"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}},"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/NetworkLoadBalancerEntities"}}},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}},"NatGateways":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGateway"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NatGateway":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"},"entities":{"$ref":"#/components/schemas/NatGatewayEntities"}}},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}},"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The FirewallRule object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}}}}}
```

## The FirewallRules object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The FirewallruleProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}}}}}
```

## The FlowLog object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}}}}}
```

## The FlowLogPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"FlowLogPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}}}}}
```

## The FlowLogs object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The FlowLogProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}}}}}
```

## The IPFailover object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}}}}}
```

## The LanEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The LanNics object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The LanProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}}}}}
```

## The Lan object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Lan":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LanProperties"},"entities":{"$ref":"#/components/schemas/LanEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}},"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The Lans object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Lans":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Lan"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Lan":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LanProperties"},"entities":{"$ref":"#/components/schemas/LanEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"LanProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ipFailover":{"type":"array","description":"IP failover configurations for lan","items":{"$ref":"#/components/schemas/IPFailover"}},"ipv4CidrBlock":{"type":"string","description":"For public LANs this property is null, for private LANs it contains the private IPv4 CIDR range. This property is a read only property.","readOnly":true,"nullable":true},"ipv6CidrBlock":{"type":"string","description":"For a GET request, this value is either 'null' or contains the LAN's /64 IPv6 CIDR block if this LAN is IPv6 enabled. For POST/PUT/PATCH requests, 'AUTO' will result in enabling this LAN for IPv6 and automatically assign a /64 IPv6 CIDR block to this LAN and /80 IPv6 CIDR blocks to the NICs and one /128 IPv6 address to each connected NIC. If you choose the IPv6 CIDR block for the LAN on your own, then you must provide a /64 block, which is inside the IPv6 CIDR block of the virtual datacenter and unique inside all LANs from this virtual datacenter. If you enable IPv6 on a LAN with NICs, those NICs will get a /80 IPv6 CIDR block and one IPv6 address assigned to each automatically, unless you specify them explicitly on the LAN and on the NICs. A virtual data center is limited to a maximum of 256 IPv6-enabled LANs.","nullable":true},"pcc":{"type":"string","description":"The unique identifier of the Cross Connect the LAN is connected to, if any. It needs to be ensured that IP addresses of the NICs of all LANs connected to a given Cross Connect is not duplicated and belongs to the same subnet range."},"public":{"type":"boolean","description":"Indicates if the LAN is connected to the internet or not."},"vni":{"type":"integer","format":"int32","readOnly":true,"description":"The VNI value that is assigned to the LAN."}}},"IPFailover":{"type":"object","properties":{"ip":{"type":"string"},"nicUuid":{"type":"string"}}},"LanEntities":{"type":"object","properties":{"nics":{"$ref":"#/components/schemas/LanNics"}}},"LanNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The Loadbalancer object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Loadbalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LoadbalancerProperties"},"entities":{"$ref":"#/components/schemas/LoadbalancerEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}},"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The LoadbalancerEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The LoadbalancerProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}}}}}
```

## The Loadbalancers object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Loadbalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Loadbalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Loadbalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LoadbalancerProperties"},"entities":{"$ref":"#/components/schemas/LoadbalancerEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"LoadbalancerProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"ip":{"type":"string","description":"IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically.","nullable":true},"dhcp":{"type":"boolean","description":"Indicates if the loadbalancer will reserve an IP using DHCP."}}},"LoadbalancerEntities":{"type":"object","properties":{"balancednics":{"$ref":"#/components/schemas/BalancedNics"}}},"BalancedNics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The Nic object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The NicEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The NicProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}}}}}
```

## The Nics object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The NicPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NicPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/NicProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}}}}}
```

## The ResourceReference object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The ListOfIds object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ListOfIds":{"required":["ids"],"properties":{"ids":{"type":"array","description":"The list of IDs","items":{"type":"string","format":"uuid"}}}}}}}
```

## The ServerEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The ServerProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The GroupEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupEntities":{"type":"object","description":"Collection of entity references associated with a group.","properties":{"users":{"$ref":"#/components/schemas/GroupMembersRef"},"resources":{"$ref":"#/components/schemas/ResourceGroupsRef"}}},"GroupMembersRef":{"type":"object","description":"Reference to group members (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"ResourceGroupsRef":{"type":"object","description":"Reference to resources assigned to a group (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The S3KeyProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"S3KeyProperties":{"type":"object","properties":{"secretKey":{"type":"string","description":"Secret of the Object storage key.","readOnly":true},"active":{"type":"boolean","description":"Denotes weather the Object storage key is active."}}}}}}
```

## The GroupUsers object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupUsers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Group"}}},"description":"Collection of the groups the user is a member of."},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Group":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/GroupProperties"},"entities":{"$ref":"#/components/schemas/GroupEntities"}}},"GroupProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"createDatacenter":{"type":"boolean","description":"Create data center privilege."},"createSnapshot":{"type":"boolean","description":"Create snapshot privilege."},"reserveIp":{"type":"boolean","description":"Reserve IP block privilege."},"accessActivityLog":{"type":"boolean","description":"Activity log access privilege."},"createPcc":{"type":"boolean","description":"User privilege to create a cross connect."},"s3Privilege":{"type":"boolean","description":"S3 privilege."},"createBackupUnit":{"type":"boolean","description":"Create backup unit privilege."},"createInternetAccess":{"type":"boolean","description":"Create internet access privilege."},"createK8sCluster":{"type":"boolean","description":"Create Kubernetes cluster privilege."},"createFlowLog":{"type":"boolean","description":"Create Flow Logs privilege."},"accessAndManageMonitoring":{"type":"boolean","description":"Privilege for a group to access and manage monitoring related functionality (access metrics, CRUD on alarms, alarm-actions etc) using Monotoring-as-a-Service (MaaS)."},"accessAndManageCertificates":{"type":"boolean","description":"Privilege for a group to access and manage certificates."},"manageDBaaS":{"type":"boolean","description":"Privilege for a group to manage DBaaS related functionality."},"accessAndManageDns":{"type":"boolean","description":"Privilege for a group to access and manage dns records."},"manageRegistry":{"type":"boolean","description":"Privilege for group accessing container registry related functionality."},"manageDataplatform":{"type":"boolean","description":"Privilege for a group to access and manage the Data Platform."},"accessAndManageLogging":{"type":"boolean","description":"Privilege for a group to access and manage Logs."},"accessAndManageCdn":{"type":"boolean","description":"Privilege for a group to access and manage CDN."},"accessAndManageVpn":{"type":"boolean","description":"Privilege for a group to access and manage VPN."},"accessAndManageApiGateway":{"type":"boolean","description":"Privilege for a group to access and manage API Gateway."},"accessAndManageKaas":{"type":"boolean","description":"Privilege for a group to access and manage KaaS."},"accessAndManageNetworkFileStorage":{"type":"boolean","description":"Privilege for a group to access and manage Network File Storage."},"accessAndManageAiModelHub":{"type":"boolean","description":"Privilege for a group to access and manage AI Model Hub."},"accessAndManageIamResources":{"type":"boolean","description":"Privilege for a group to access and manage Password Policies."},"createNetworkSecurityGroups":{"type":"boolean","description":"Privilege for a group to access and manage Network Security Groups."}}},"GroupEntities":{"type":"object","description":"Collection of entity references associated with a group.","properties":{"users":{"$ref":"#/components/schemas/GroupMembersRef"},"resources":{"$ref":"#/components/schemas/ResourceGroupsRef"}}},"GroupMembersRef":{"type":"object","description":"Reference to group members (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ResourceGroupsRef":{"type":"object","description":"Reference to resources assigned to a group (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The Group object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Group":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/GroupProperties"},"entities":{"$ref":"#/components/schemas/GroupEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"GroupProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"createDatacenter":{"type":"boolean","description":"Create data center privilege."},"createSnapshot":{"type":"boolean","description":"Create snapshot privilege."},"reserveIp":{"type":"boolean","description":"Reserve IP block privilege."},"accessActivityLog":{"type":"boolean","description":"Activity log access privilege."},"createPcc":{"type":"boolean","description":"User privilege to create a cross connect."},"s3Privilege":{"type":"boolean","description":"S3 privilege."},"createBackupUnit":{"type":"boolean","description":"Create backup unit privilege."},"createInternetAccess":{"type":"boolean","description":"Create internet access privilege."},"createK8sCluster":{"type":"boolean","description":"Create Kubernetes cluster privilege."},"createFlowLog":{"type":"boolean","description":"Create Flow Logs privilege."},"accessAndManageMonitoring":{"type":"boolean","description":"Privilege for a group to access and manage monitoring related functionality (access metrics, CRUD on alarms, alarm-actions etc) using Monotoring-as-a-Service (MaaS)."},"accessAndManageCertificates":{"type":"boolean","description":"Privilege for a group to access and manage certificates."},"manageDBaaS":{"type":"boolean","description":"Privilege for a group to manage DBaaS related functionality."},"accessAndManageDns":{"type":"boolean","description":"Privilege for a group to access and manage dns records."},"manageRegistry":{"type":"boolean","description":"Privilege for group accessing container registry related functionality."},"manageDataplatform":{"type":"boolean","description":"Privilege for a group to access and manage the Data Platform."},"accessAndManageLogging":{"type":"boolean","description":"Privilege for a group to access and manage Logs."},"accessAndManageCdn":{"type":"boolean","description":"Privilege for a group to access and manage CDN."},"accessAndManageVpn":{"type":"boolean","description":"Privilege for a group to access and manage VPN."},"accessAndManageApiGateway":{"type":"boolean","description":"Privilege for a group to access and manage API Gateway."},"accessAndManageKaas":{"type":"boolean","description":"Privilege for a group to access and manage KaaS."},"accessAndManageNetworkFileStorage":{"type":"boolean","description":"Privilege for a group to access and manage Network File Storage."},"accessAndManageAiModelHub":{"type":"boolean","description":"Privilege for a group to access and manage AI Model Hub."},"accessAndManageIamResources":{"type":"boolean","description":"Privilege for a group to access and manage Password Policies."},"createNetworkSecurityGroups":{"type":"boolean","description":"Privilege for a group to access and manage Network Security Groups."}}},"GroupEntities":{"type":"object","description":"Collection of entity references associated with a group.","properties":{"users":{"$ref":"#/components/schemas/GroupMembersRef"},"resources":{"$ref":"#/components/schemas/ResourceGroupsRef"}}},"GroupMembersRef":{"type":"object","description":"Reference to group members (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ResourceGroupsRef":{"type":"object","description":"Reference to resources assigned to a group (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The S3Key object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"S3Key":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/S3KeyMetadata"},"properties":{"$ref":"#/components/schemas/S3KeyProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"S3KeyMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the Object storage key was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the Object storage key.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the Object storage key was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the Object storage key.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the Object storage key.","readOnly":true}}},"S3KeyProperties":{"type":"object","properties":{"secretKey":{"type":"string","description":"Secret of the Object storage key.","readOnly":true},"active":{"type":"boolean","description":"Denotes weather the Object storage key is active."}}}}}}
```

## The Groups object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Groups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Group"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Group":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/GroupProperties"},"entities":{"$ref":"#/components/schemas/GroupEntities"}}},"GroupProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"createDatacenter":{"type":"boolean","description":"Create data center privilege."},"createSnapshot":{"type":"boolean","description":"Create snapshot privilege."},"reserveIp":{"type":"boolean","description":"Reserve IP block privilege."},"accessActivityLog":{"type":"boolean","description":"Activity log access privilege."},"createPcc":{"type":"boolean","description":"User privilege to create a cross connect."},"s3Privilege":{"type":"boolean","description":"S3 privilege."},"createBackupUnit":{"type":"boolean","description":"Create backup unit privilege."},"createInternetAccess":{"type":"boolean","description":"Create internet access privilege."},"createK8sCluster":{"type":"boolean","description":"Create Kubernetes cluster privilege."},"createFlowLog":{"type":"boolean","description":"Create Flow Logs privilege."},"accessAndManageMonitoring":{"type":"boolean","description":"Privilege for a group to access and manage monitoring related functionality (access metrics, CRUD on alarms, alarm-actions etc) using Monotoring-as-a-Service (MaaS)."},"accessAndManageCertificates":{"type":"boolean","description":"Privilege for a group to access and manage certificates."},"manageDBaaS":{"type":"boolean","description":"Privilege for a group to manage DBaaS related functionality."},"accessAndManageDns":{"type":"boolean","description":"Privilege for a group to access and manage dns records."},"manageRegistry":{"type":"boolean","description":"Privilege for group accessing container registry related functionality."},"manageDataplatform":{"type":"boolean","description":"Privilege for a group to access and manage the Data Platform."},"accessAndManageLogging":{"type":"boolean","description":"Privilege for a group to access and manage Logs."},"accessAndManageCdn":{"type":"boolean","description":"Privilege for a group to access and manage CDN."},"accessAndManageVpn":{"type":"boolean","description":"Privilege for a group to access and manage VPN."},"accessAndManageApiGateway":{"type":"boolean","description":"Privilege for a group to access and manage API Gateway."},"accessAndManageKaas":{"type":"boolean","description":"Privilege for a group to access and manage KaaS."},"accessAndManageNetworkFileStorage":{"type":"boolean","description":"Privilege for a group to access and manage Network File Storage."},"accessAndManageAiModelHub":{"type":"boolean","description":"Privilege for a group to access and manage AI Model Hub."},"accessAndManageIamResources":{"type":"boolean","description":"Privilege for a group to access and manage Password Policies."},"createNetworkSecurityGroups":{"type":"boolean","description":"Privilege for a group to access and manage Network Security Groups."}}},"GroupEntities":{"type":"object","description":"Collection of entity references associated with a group.","properties":{"users":{"$ref":"#/components/schemas/GroupMembersRef"},"resources":{"$ref":"#/components/schemas/ResourceGroupsRef"}}},"GroupMembersRef":{"type":"object","description":"Reference to group members (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ResourceGroupsRef":{"type":"object","description":"Reference to resources assigned to a group (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The ResourceEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourceEntities":{"type":"object","properties":{"groups":{"$ref":"#/components/schemas/ResourceGroups"}}},"ResourceGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Resource"}}},"description":"Resources assigned to this group."},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Resource":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ResourceProperties"},"entities":{"$ref":"#/components/schemas/ResourceEntities"}},"description":"datacenter resource representation"},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ResourceProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the resource is multi factor protected or not e.g. using two factor protection. Currently only data centers and snapshots are allowed to be multi factor protected, The value of attribute if null is intentional and it means that the resource doesn't support multi factor protection at all."}}}}}}
```

## The ResourceGroups object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourceGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Resource"}}},"description":"Resources assigned to this group."},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Resource":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ResourceProperties"},"entities":{"$ref":"#/components/schemas/ResourceEntities"}},"description":"datacenter resource representation"},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ResourceProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the resource is multi factor protected or not e.g. using two factor protection. Currently only data centers and snapshots are allowed to be multi factor protected, The value of attribute if null is intentional and it means that the resource doesn't support multi factor protection at all."}}},"ResourceEntities":{"type":"object","properties":{"groups":{"$ref":"#/components/schemas/ResourceGroups"}}}}}}
```

## The Resource object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Resource":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ResourceProperties"},"entities":{"$ref":"#/components/schemas/ResourceEntities"}},"description":"datacenter resource representation"},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ResourceProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the resource is multi factor protected or not e.g. using two factor protection. Currently only data centers and snapshots are allowed to be multi factor protected, The value of attribute if null is intentional and it means that the resource doesn't support multi factor protection at all."}}},"ResourceEntities":{"type":"object","properties":{"groups":{"$ref":"#/components/schemas/ResourceGroups"}}},"ResourceGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Resource"}}},"description":"Resources assigned to this group."}}}}
```

## The ResourcesUsers object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourcesUsers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Resource"}}},"description":"Resources owned by a user."},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Resource":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ResourceProperties"},"entities":{"$ref":"#/components/schemas/ResourceEntities"}},"description":"datacenter resource representation"},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ResourceProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the resource is multi factor protected or not e.g. using two factor protection. Currently only data centers and snapshots are allowed to be multi factor protected, The value of attribute if null is intentional and it means that the resource doesn't support multi factor protection at all."}}},"ResourceEntities":{"type":"object","properties":{"groups":{"$ref":"#/components/schemas/ResourceGroups"}}},"ResourceGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Resource"}}},"description":"Resources assigned to this group."}}}}
```

## The UserMetadata object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UserMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time the user was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"lastLogin":{"type":"string","description":"The time of the last login by the user.","format":"date-time","readOnly":true}}}}}}
```

## The ResourceProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourceProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the resource is multi factor protected or not e.g. using two factor protection. Currently only data centers and snapshots are allowed to be multi factor protected, The value of attribute if null is intentional and it means that the resource doesn't support multi factor protection at all."}}}}}}
```

## The UserProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UserProperties":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"s3CanonicalUserId":{"type":"string","description":"Canonical (Object storage) ID of the user for a given identity."},"active":{"type":"boolean","description":"Indicates if the user is active."}}}}}}
```

## The UserPropertiesPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UserPropertiesPut":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"password":{"type":"string","description":"password of the user"},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"active":{"type":"boolean","description":"Indicates if the user is active."}}}}}}
```

## The UserPropertiesPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UserPropertiesPost":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"password":{"type":"string","description":"User password."},"active":{"type":"boolean","description":"Indicates if the user is active."}}}}}}
```

## The User object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"User":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/UserMetadata"},"properties":{"$ref":"#/components/schemas/UserProperties"},"entities":{"$ref":"#/components/schemas/UsersEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"UserMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time the user was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"lastLogin":{"type":"string","description":"The time of the last login by the user.","format":"date-time","readOnly":true}}},"UserProperties":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"s3CanonicalUserId":{"type":"string","description":"Canonical (Object storage) ID of the user for a given identity."},"active":{"type":"boolean","description":"Indicates if the user is active."}}},"UsersEntities":{"type":"object","description":"Collection of entity references associated with a user.","properties":{"owns":{"$ref":"#/components/schemas/ResourcesUsersRef"},"groups":{"$ref":"#/components/schemas/GroupUsersRef"},"s3Keys":{"$ref":"#/components/schemas/S3KeysRef"}}},"ResourcesUsersRef":{"type":"object","description":"Reference to resources owned by a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"GroupUsersRef":{"type":"object","description":"Reference to groups a user belongs to (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"S3KeysRef":{"type":"object","description":"Reference to S3 keys associated with a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The UserGroupPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UserGroupPost":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."}}}}}}
```

## The UserPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UserPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"properties":{"$ref":"#/components/schemas/UserPropertiesPut"}}},"UserPropertiesPut":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"password":{"type":"string","description":"password of the user"},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"active":{"type":"boolean","description":"Indicates if the user is active."}}}}}}
```

## The UserPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UserPost":{"required":["properties"],"type":"object","properties":{"properties":{"$ref":"#/components/schemas/UserPropertiesPost"}}},"UserPropertiesPost":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"password":{"type":"string","description":"User password."},"active":{"type":"boolean","description":"Indicates if the user is active."}}}}}}
```

## The UsersEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"UsersEntities":{"type":"object","description":"Collection of entity references associated with a user.","properties":{"owns":{"$ref":"#/components/schemas/ResourcesUsersRef"},"groups":{"$ref":"#/components/schemas/GroupUsersRef"},"s3Keys":{"$ref":"#/components/schemas/S3KeysRef"}}},"ResourcesUsersRef":{"type":"object","description":"Reference to resources owned by a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"GroupUsersRef":{"type":"object","description":"Reference to groups a user belongs to (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"S3KeysRef":{"type":"object","description":"Reference to S3 keys associated with a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The GroupMembers object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupMembers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/User"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"User":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/UserMetadata"},"properties":{"$ref":"#/components/schemas/UserProperties"},"entities":{"$ref":"#/components/schemas/UsersEntities"}}},"UserMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time the user was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"lastLogin":{"type":"string","description":"The time of the last login by the user.","format":"date-time","readOnly":true}}},"UserProperties":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"s3CanonicalUserId":{"type":"string","description":"Canonical (Object storage) ID of the user for a given identity."},"active":{"type":"boolean","description":"Indicates if the user is active."}}},"UsersEntities":{"type":"object","description":"Collection of entity references associated with a user.","properties":{"owns":{"$ref":"#/components/schemas/ResourcesUsersRef"},"groups":{"$ref":"#/components/schemas/GroupUsersRef"},"s3Keys":{"$ref":"#/components/schemas/S3KeysRef"}}},"ResourcesUsersRef":{"type":"object","description":"Reference to resources owned by a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"GroupUsersRef":{"type":"object","description":"Reference to groups a user belongs to (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"S3KeysRef":{"type":"object","description":"Reference to S3 keys associated with a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The GroupProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"createDatacenter":{"type":"boolean","description":"Create data center privilege."},"createSnapshot":{"type":"boolean","description":"Create snapshot privilege."},"reserveIp":{"type":"boolean","description":"Reserve IP block privilege."},"accessActivityLog":{"type":"boolean","description":"Activity log access privilege."},"createPcc":{"type":"boolean","description":"User privilege to create a cross connect."},"s3Privilege":{"type":"boolean","description":"S3 privilege."},"createBackupUnit":{"type":"boolean","description":"Create backup unit privilege."},"createInternetAccess":{"type":"boolean","description":"Create internet access privilege."},"createK8sCluster":{"type":"boolean","description":"Create Kubernetes cluster privilege."},"createFlowLog":{"type":"boolean","description":"Create Flow Logs privilege."},"accessAndManageMonitoring":{"type":"boolean","description":"Privilege for a group to access and manage monitoring related functionality (access metrics, CRUD on alarms, alarm-actions etc) using Monotoring-as-a-Service (MaaS)."},"accessAndManageCertificates":{"type":"boolean","description":"Privilege for a group to access and manage certificates."},"manageDBaaS":{"type":"boolean","description":"Privilege for a group to manage DBaaS related functionality."},"accessAndManageDns":{"type":"boolean","description":"Privilege for a group to access and manage dns records."},"manageRegistry":{"type":"boolean","description":"Privilege for group accessing container registry related functionality."},"manageDataplatform":{"type":"boolean","description":"Privilege for a group to access and manage the Data Platform."},"accessAndManageLogging":{"type":"boolean","description":"Privilege for a group to access and manage Logs."},"accessAndManageCdn":{"type":"boolean","description":"Privilege for a group to access and manage CDN."},"accessAndManageVpn":{"type":"boolean","description":"Privilege for a group to access and manage VPN."},"accessAndManageApiGateway":{"type":"boolean","description":"Privilege for a group to access and manage API Gateway."},"accessAndManageKaas":{"type":"boolean","description":"Privilege for a group to access and manage KaaS."},"accessAndManageNetworkFileStorage":{"type":"boolean","description":"Privilege for a group to access and manage Network File Storage."},"accessAndManageAiModelHub":{"type":"boolean","description":"Privilege for a group to access and manage AI Model Hub."},"accessAndManageIamResources":{"type":"boolean","description":"Privilege for a group to access and manage Password Policies."},"createNetworkSecurityGroups":{"type":"boolean","description":"Privilege for a group to access and manage Network Security Groups."}}}}}}
```

## The GroupShare object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupShare":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"resource as generic type","readOnly":true,"allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/GroupShareProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"GroupShareProperties":{"type":"object","properties":{"editPrivilege":{"type":"boolean","description":"edit privilege on a resource"},"sharePrivilege":{"type":"boolean","description":"share privilege on a resource"}}}}}}
```

## The GroupShareProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupShareProperties":{"type":"object","properties":{"editPrivilege":{"type":"boolean","description":"edit privilege on a resource"},"sharePrivilege":{"type":"boolean","description":"share privilege on a resource"}}}}}}
```

## The GroupShares object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupShares":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"Share representing groups and resource relationship","readOnly":true,"allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/GroupShare"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"GroupShare":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"resource as generic type","readOnly":true,"allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/GroupShareProperties"}}},"GroupShareProperties":{"type":"object","properties":{"editPrivilege":{"type":"boolean","description":"edit privilege on a resource"},"sharePrivilege":{"type":"boolean","description":"share privilege on a resource"}}}}}}
```

## The Images object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Images":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Image"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The IpBlock object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"IpBlock":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/IpBlockProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"IpBlockProperties":{"required":["location","size"],"type":"object","properties":{"ips":{"type":"array","description":"Collection of IPs, associated with the IP Block.","readOnly":true,"items":{"type":"string"}},"location":{"type":"string","description":"Location of that IP block. Property cannot be modified after it is created (disallowed in update requests)."},"size":{"type":"integer","description":"The size of the IP block.","format":"int32"},"name":{"type":"string","description":"The name of the  resource."},"ipConsumers":{"type":"array","description":"Read-Only attribute. Lists consumption detail for an individual IP","readOnly":true,"items":{"$ref":"#/components/schemas/IpConsumer"}}}},"IpConsumer":{"type":"object","properties":{"ip":{"type":"string"},"mac":{"type":"string"},"nicId":{"type":"string"},"serverId":{"type":"string"},"serverName":{"type":"string"},"datacenterId":{"type":"string"},"datacenterName":{"type":"string"},"k8sNodePoolUuid":{"type":"string"},"k8sClusterUuid":{"type":"string"}}}}}}
```

## The IpBlockProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"IpBlockProperties":{"required":["location","size"],"type":"object","properties":{"ips":{"type":"array","description":"Collection of IPs, associated with the IP Block.","readOnly":true,"items":{"type":"string"}},"location":{"type":"string","description":"Location of that IP block. Property cannot be modified after it is created (disallowed in update requests)."},"size":{"type":"integer","description":"The size of the IP block.","format":"int32"},"name":{"type":"string","description":"The name of the  resource."},"ipConsumers":{"type":"array","description":"Read-Only attribute. Lists consumption detail for an individual IP","readOnly":true,"items":{"$ref":"#/components/schemas/IpConsumer"}}}},"IpConsumer":{"type":"object","properties":{"ip":{"type":"string"},"mac":{"type":"string"},"nicId":{"type":"string"},"serverId":{"type":"string"},"serverName":{"type":"string"},"datacenterId":{"type":"string"},"datacenterName":{"type":"string"},"k8sNodePoolUuid":{"type":"string"},"k8sClusterUuid":{"type":"string"}}}}}}
```

## The IpBlocks object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"IpBlocks":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/IpBlock"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetMandatory"},"limit":{"$ref":"#/components/schemas/PaginationLimitMandatory"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"IpBlock":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/IpBlockProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"IpBlockProperties":{"required":["location","size"],"type":"object","properties":{"ips":{"type":"array","description":"Collection of IPs, associated with the IP Block.","readOnly":true,"items":{"type":"string"}},"location":{"type":"string","description":"Location of that IP block. Property cannot be modified after it is created (disallowed in update requests)."},"size":{"type":"integer","description":"The size of the IP block.","format":"int32"},"name":{"type":"string","description":"The name of the  resource."},"ipConsumers":{"type":"array","description":"Read-Only attribute. Lists consumption detail for an individual IP","readOnly":true,"items":{"$ref":"#/components/schemas/IpConsumer"}}}},"IpConsumer":{"type":"object","properties":{"ip":{"type":"string"},"mac":{"type":"string"},"nicId":{"type":"string"},"serverId":{"type":"string"},"serverName":{"type":"string"},"datacenterId":{"type":"string"},"datacenterName":{"type":"string"},"k8sNodePoolUuid":{"type":"string"},"k8sClusterUuid":{"type":"string"}}},"PaginationOffsetMandatory":{"type":"number","description":"The offset, specified in the request (if not is specified, 0 is used by default)."},"PaginationLimitMandatory":{"type":"number","description":"The limit, specified in the request (if not specified, the endpoint's default pagination limit is used)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The LocationProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LocationProperties":{"type":"object","properties":{"name":{"type":"string","description":"The location name."},"features":{"type":"array","description":"A list of available features in the location.","readOnly":true,"items":{"type":"string"}},"imageAliases":{"type":"array","description":"A list of image aliases available in the location.","readOnly":true,"items":{"type":"string"}},"cpuArchitecture":{"type":"array","description":"A list of available CPU types and related resources available in the location.","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"gpuArchitecture":{"type":"array","description":"The types of GPU cards that are available in the location.","readOnly":true,"items":{"$ref":"#/components/schemas/GpuArchitectureProperties"}}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"GpuArchitectureProperties":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card."},"model":{"type":"string","description":"The model of the Graphics Processing Unit (GPU) card."}}}}}}
```

## The CpuArchitectureProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}}}}}
```

## The GpuArchitectureProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GpuArchitectureProperties":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card."},"model":{"type":"string","description":"The model of the Graphics Processing Unit (GPU) card."}}}}}}
```

## The Location object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Location":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LocationProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"LocationProperties":{"type":"object","properties":{"name":{"type":"string","description":"The location name."},"features":{"type":"array","description":"A list of available features in the location.","readOnly":true,"items":{"type":"string"}},"imageAliases":{"type":"array","description":"A list of image aliases available in the location.","readOnly":true,"items":{"type":"string"}},"cpuArchitecture":{"type":"array","description":"A list of available CPU types and related resources available in the location.","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"gpuArchitecture":{"type":"array","description":"The types of GPU cards that are available in the location.","readOnly":true,"items":{"$ref":"#/components/schemas/GpuArchitectureProperties"}}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"GpuArchitectureProperties":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card."},"model":{"type":"string","description":"The model of the Graphics Processing Unit (GPU) card."}}}}}}
```

## The Locations object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Locations":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Location"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Location":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/LocationProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"LocationProperties":{"type":"object","properties":{"name":{"type":"string","description":"The location name."},"features":{"type":"array","description":"A list of available features in the location.","readOnly":true,"items":{"type":"string"}},"imageAliases":{"type":"array","description":"A list of image aliases available in the location.","readOnly":true,"items":{"type":"string"}},"cpuArchitecture":{"type":"array","description":"A list of available CPU types and related resources available in the location.","readOnly":true,"items":{"$ref":"#/components/schemas/CpuArchitectureProperties"}},"gpuArchitecture":{"type":"array","description":"The types of GPU cards that are available in the location.","readOnly":true,"items":{"$ref":"#/components/schemas/GpuArchitectureProperties"}}}},"CpuArchitectureProperties":{"type":"object","properties":{"cpuFamily":{"type":"string","description":"A valid CPU family name."},"maxCores":{"type":"integer","description":"The maximum number of cores available.","format":"int32"},"maxRam":{"type":"integer","description":"The maximum RAM size in MB.","format":"int32"},"vendor":{"type":"string","description":"A valid CPU vendor name."}}},"GpuArchitectureProperties":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card."},"model":{"type":"string","description":"The model of the Graphics Processing Unit (GPU) card."}}}}}}
```

## The ConnectableDatacenter object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ConnectableDatacenter":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the virtual data center that can be connected to the Cross Connect."},"name":{"type":"string","description":"Name of the virtual data center that can be connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center that can be connected to the Cross Connect."}}}}}}
```

## The Peer object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Peer":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the LAN connected to the Cross Connect."},"name":{"type":"string","description":"Name of the LAN connected to the Cross Connect."},"datacenterId":{"type":"string","description":"Identifier of the virtual data center connected to the Cross Connect."},"datacenterName":{"type":"string","description":"Name of the virtual data center connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center connected to the Cross Connect."}}}}}}
```

## The IpConsumer object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"IpConsumer":{"type":"object","properties":{"ip":{"type":"string"},"mac":{"type":"string"},"nicId":{"type":"string"},"serverId":{"type":"string"},"serverName":{"type":"string"},"datacenterId":{"type":"string"},"datacenterName":{"type":"string"},"k8sNodePoolUuid":{"type":"string"},"k8sClusterUuid":{"type":"string"}}}}}}
```

## The PrivateCrossConnectProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PrivateCrossConnectProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the Cross Connect."},"description":{"type":"string","description":"Human-readable description of the Cross Connect."},"peers":{"type":"array","description":"Read-Only attribute. Lists LAN's connected to this Cross Connect.","readOnly":true,"items":{"$ref":"#/components/schemas/Peer"}},"connectableDatacenters":{"type":"array","description":"Read-Only attribute. Lists data centers that can be connected to this Cross Connect. If the Cross Connect is not connected to any LANs, it lists all VDCs the user has access to. Once one LAN is connected to the Cross Connect, only LANs of the related locations can be used.","readOnly":true,"items":{"$ref":"#/components/schemas/ConnectableDatacenter"}}}},"Peer":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the LAN connected to the Cross Connect."},"name":{"type":"string","description":"Name of the LAN connected to the Cross Connect."},"datacenterId":{"type":"string","description":"Identifier of the virtual data center connected to the Cross Connect."},"datacenterName":{"type":"string","description":"Name of the virtual data center connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center connected to the Cross Connect."}}},"ConnectableDatacenter":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the virtual data center that can be connected to the Cross Connect."},"name":{"type":"string","description":"Name of the virtual data center that can be connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center that can be connected to the Cross Connect."}}}}}}
```

## The PrivateCrossConnect object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PrivateCrossConnect":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/PrivateCrossConnectProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"PrivateCrossConnectProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the Cross Connect."},"description":{"type":"string","description":"Human-readable description of the Cross Connect."},"peers":{"type":"array","description":"Read-Only attribute. Lists LAN's connected to this Cross Connect.","readOnly":true,"items":{"$ref":"#/components/schemas/Peer"}},"connectableDatacenters":{"type":"array","description":"Read-Only attribute. Lists data centers that can be connected to this Cross Connect. If the Cross Connect is not connected to any LANs, it lists all VDCs the user has access to. Once one LAN is connected to the Cross Connect, only LANs of the related locations can be used.","readOnly":true,"items":{"$ref":"#/components/schemas/ConnectableDatacenter"}}}},"Peer":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the LAN connected to the Cross Connect."},"name":{"type":"string","description":"Name of the LAN connected to the Cross Connect."},"datacenterId":{"type":"string","description":"Identifier of the virtual data center connected to the Cross Connect."},"datacenterName":{"type":"string","description":"Name of the virtual data center connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center connected to the Cross Connect."}}},"ConnectableDatacenter":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the virtual data center that can be connected to the Cross Connect."},"name":{"type":"string","description":"Name of the virtual data center that can be connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center that can be connected to the Cross Connect."}}}}}}
```

## The PrivateCrossConnects object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PrivateCrossConnects":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/PrivateCrossConnect"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"PrivateCrossConnect":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/PrivateCrossConnectProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"PrivateCrossConnectProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the Cross Connect."},"description":{"type":"string","description":"Human-readable description of the Cross Connect."},"peers":{"type":"array","description":"Read-Only attribute. Lists LAN's connected to this Cross Connect.","readOnly":true,"items":{"$ref":"#/components/schemas/Peer"}},"connectableDatacenters":{"type":"array","description":"Read-Only attribute. Lists data centers that can be connected to this Cross Connect. If the Cross Connect is not connected to any LANs, it lists all VDCs the user has access to. Once one LAN is connected to the Cross Connect, only LANs of the related locations can be used.","readOnly":true,"items":{"$ref":"#/components/schemas/ConnectableDatacenter"}}}},"Peer":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the LAN connected to the Cross Connect."},"name":{"type":"string","description":"Name of the LAN connected to the Cross Connect."},"datacenterId":{"type":"string","description":"Identifier of the virtual data center connected to the Cross Connect."},"datacenterName":{"type":"string","description":"Name of the virtual data center connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center connected to the Cross Connect."}}},"ConnectableDatacenter":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of the virtual data center that can be connected to the Cross Connect."},"name":{"type":"string","description":"Name of the virtual data center that can be connected to the Cross Connect."},"location":{"type":"string","description":"Location of the virtual data center that can be connected to the Cross Connect."}}}}}}
```

## The RequestStatus object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RequestStatus":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/RequestStatusMetadata"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"RequestStatusMetadata":{"type":"object","properties":{"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]},"message":{"type":"string"},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"targets":{"type":"array","items":{"$ref":"#/components/schemas/RequestTarget"}}}},"RequestTarget":{"type":"object","properties":{"target":{"$ref":"#/components/schemas/ResourceReference"},"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The RequestStatusMetadata object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RequestStatusMetadata":{"type":"object","properties":{"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]},"message":{"type":"string"},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"targets":{"type":"array","items":{"$ref":"#/components/schemas/RequestTarget"}}}},"RequestTarget":{"type":"object","properties":{"target":{"$ref":"#/components/schemas/ResourceReference"},"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The RequestTarget object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RequestTarget":{"type":"object","properties":{"target":{"$ref":"#/components/schemas/ResourceReference"},"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The Request object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Request":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/RequestMetadata"},"properties":{"$ref":"#/components/schemas/RequestProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"RequestMetadata":{"type":"object","properties":{"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"requestStatus":{"$ref":"#/components/schemas/RequestStatus"}}},"RequestStatus":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/RequestStatusMetadata"}}},"RequestStatusMetadata":{"type":"object","properties":{"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]},"message":{"type":"string"},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"targets":{"type":"array","items":{"$ref":"#/components/schemas/RequestTarget"}}}},"RequestTarget":{"type":"object","properties":{"target":{"$ref":"#/components/schemas/ResourceReference"},"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"RequestProperties":{"type":"object","properties":{"method":{"type":"string"},"headers":{"type":"object","additionalProperties":{"type":"string"}},"body":{"type":"string"},"url":{"type":"string"}}}}}}
```

## The RequestMetadata object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RequestMetadata":{"type":"object","properties":{"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"requestStatus":{"$ref":"#/components/schemas/RequestStatus"}}},"RequestStatus":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/RequestStatusMetadata"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"RequestStatusMetadata":{"type":"object","properties":{"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]},"message":{"type":"string"},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"targets":{"type":"array","items":{"$ref":"#/components/schemas/RequestTarget"}}}},"RequestTarget":{"type":"object","properties":{"target":{"$ref":"#/components/schemas/ResourceReference"},"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}}}}}
```

## The RequestProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RequestProperties":{"type":"object","properties":{"method":{"type":"string"},"headers":{"type":"object","additionalProperties":{"type":"string"}},"body":{"type":"string"},"url":{"type":"string"}}}}}}
```

## The Requests object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Requests":{"required":["_links","limit","offset"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Request"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetMandatory"},"limit":{"$ref":"#/components/schemas/PaginationLimitMandatory"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Request":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/RequestMetadata"},"properties":{"$ref":"#/components/schemas/RequestProperties"}}},"RequestMetadata":{"type":"object","properties":{"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"requestStatus":{"$ref":"#/components/schemas/RequestStatus"}}},"RequestStatus":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/RequestStatusMetadata"}}},"RequestStatusMetadata":{"type":"object","properties":{"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]},"message":{"type":"string"},"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"targets":{"type":"array","items":{"$ref":"#/components/schemas/RequestTarget"}}}},"RequestTarget":{"type":"object","properties":{"target":{"$ref":"#/components/schemas/ResourceReference"},"status":{"type":"string","enum":["QUEUED","RUNNING","DONE","FAILED"]}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"RequestProperties":{"type":"object","properties":{"method":{"type":"string"},"headers":{"type":"object","additionalProperties":{"type":"string"}},"body":{"type":"string"},"url":{"type":"string"}}},"PaginationOffsetMandatory":{"type":"number","description":"The offset, specified in the request (if not is specified, 0 is used by default)."},"PaginationLimitMandatory":{"type":"number","description":"The limit, specified in the request (if not specified, the endpoint's default pagination limit is used)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The Resources object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Resources":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Resource"}}},"description":"Collection to represent the resource."},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Resource":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ResourceProperties"},"entities":{"$ref":"#/components/schemas/ResourceEntities"}},"description":"datacenter resource representation"},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ResourceProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the resource."},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the resource is multi factor protected or not e.g. using two factor protection. Currently only data centers and snapshots are allowed to be multi factor protected, The value of attribute if null is intentional and it means that the resource doesn't support multi factor protection at all."}}},"ResourceEntities":{"type":"object","properties":{"groups":{"$ref":"#/components/schemas/ResourceGroups"}}},"ResourceGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Resource"}}},"description":"Resources assigned to this group."}}}}
```

## The Info object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Info":{"type":"object","properties":{"href":{"type":"string","description":"The API entry point.","format":"uri","readOnly":true},"name":{"type":"string","description":"The API name.","readOnly":true},"version":{"type":"string","description":"The API version.","readOnly":true}}}}}}
```

## The Token object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Token":{"type":"object","properties":{"token":{"type":"string","description":"The jwToken for the server.","readOnly":true}}}}}}
```

## The RemoteConsoleUrl object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RemoteConsoleUrl":{"type":"object","properties":{"url":{"type":"string","description":"The remote console url with the jwToken parameter for access","readOnly":true}}}}}}
```

## The Server object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The Servers object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The SnapshotProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"SnapshotProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"Location of that image/snapshot. ","readOnly":true},"size":{"type":"number","description":"The size of the image in GB.","readOnly":true},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the snapshot requires extra protection, such as two-step verification."},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"discScsiHotUnplug":{"type":"boolean","description":"Is capable of SCSI drive hot unplug (no reboot required). This works only for non-Windows virtual Machines."},"licenceType":{"type":"string","description":"OS type of this snapshot"},"applicationType":{"$ref":"#/components/schemas/ApplicationType"}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The Snapshot object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Snapshot":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SnapshotProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"SnapshotProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"Location of that image/snapshot. ","readOnly":true},"size":{"type":"number","description":"The size of the image in GB.","readOnly":true},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the snapshot requires extra protection, such as two-step verification."},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"discScsiHotUnplug":{"type":"boolean","description":"Is capable of SCSI drive hot unplug (no reboot required). This works only for non-Windows virtual Machines."},"licenceType":{"type":"string","description":"OS type of this snapshot"},"applicationType":{"$ref":"#/components/schemas/ApplicationType"}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The CreateSnapshot object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"CreateSnapshot":{"type":"object","properties":{"properties":{"$ref":"#/components/schemas/CreateSnapshotProperties"}}},"CreateSnapshotProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the snapshot"},"description":{"type":"string","description":"The description of the snapshot"},"secAuthProtection":{"type":"boolean","description":"Flag representing if extra protection is enabled on snapshot e.g. Two Factor protection etc."},"licenceType":{"type":"string","description":"OS type of this Snapshot"},"applicationType":{"$ref":"#/components/schemas/ApplicationType"}}},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The CreateSnapshotProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"CreateSnapshotProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the snapshot"},"description":{"type":"string","description":"The description of the snapshot"},"secAuthProtection":{"type":"boolean","description":"Flag representing if extra protection is enabled on snapshot e.g. Two Factor protection etc."},"licenceType":{"type":"string","description":"OS type of this Snapshot"},"applicationType":{"$ref":"#/components/schemas/ApplicationType"}}},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The RestoreSnapshot object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RestoreSnapshot":{"type":"object","properties":{"properties":{"$ref":"#/components/schemas/RestoreSnapshotProperties"}}},"RestoreSnapshotProperties":{"type":"object","properties":{"snapshotId":{"type":"string","description":"The id of the snapshot"}}}}}}
```

## The RestoreSnapshotProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RestoreSnapshotProperties":{"type":"object","properties":{"snapshotId":{"type":"string","description":"The id of the snapshot"}}}}}}
```

## The Snapshots object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Snapshots":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Snapshot"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Snapshot":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SnapshotProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"SnapshotProperties":{"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"Location of that image/snapshot. ","readOnly":true},"size":{"type":"number","description":"The size of the image in GB.","readOnly":true},"secAuthProtection":{"type":"boolean","description":"Boolean value representing if the snapshot requires extra protection, such as two-step verification."},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"discScsiHotUnplug":{"type":"boolean","description":"Is capable of SCSI drive hot unplug (no reboot required). This works only for non-Windows virtual Machines."},"licenceType":{"type":"string","description":"OS type of this snapshot"},"applicationType":{"$ref":"#/components/schemas/ApplicationType"}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The Users object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Users":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/User"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"User":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/UserMetadata"},"properties":{"$ref":"#/components/schemas/UserProperties"},"entities":{"$ref":"#/components/schemas/UsersEntities"}}},"UserMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time the user was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"lastLogin":{"type":"string","description":"The time of the last login by the user.","format":"date-time","readOnly":true}}},"UserProperties":{"type":"object","properties":{"firstname":{"type":"string","description":"The first name of the user."},"lastname":{"type":"string","description":"The last name of the user."},"email":{"type":"string","description":"The email address of the user."},"administrator":{"type":"boolean","description":"Indicates if the user has admin rights."},"forceSecAuth":{"type":"boolean","description":"Indicates if secure authentication should be forced on the user."},"secAuthActive":{"type":"boolean","description":"Indicates if secure authentication is active for the user."},"s3CanonicalUserId":{"type":"string","description":"Canonical (Object storage) ID of the user for a given identity."},"active":{"type":"boolean","description":"Indicates if the user is active."}}},"UsersEntities":{"type":"object","description":"Collection of entity references associated with a user.","properties":{"owns":{"$ref":"#/components/schemas/ResourcesUsersRef"},"groups":{"$ref":"#/components/schemas/GroupUsersRef"},"s3Keys":{"$ref":"#/components/schemas/S3KeysRef"}}},"ResourcesUsersRef":{"type":"object","description":"Reference to resources owned by a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"GroupUsersRef":{"type":"object","description":"Reference to groups a user belongs to (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"S3KeysRef":{"type":"object","description":"Reference to S3 keys associated with a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The S3Keys object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"S3Keys":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/S3Key"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"S3Key":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/S3KeyMetadata"},"properties":{"$ref":"#/components/schemas/S3KeyProperties"}}},"S3KeyMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the Object storage key was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the Object storage key.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the Object storage key was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the Object storage key.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the Object storage key.","readOnly":true}}},"S3KeyProperties":{"type":"object","properties":{"secretKey":{"type":"string","description":"Secret of the Object storage key.","readOnly":true},"active":{"type":"boolean","description":"Denotes weather the Object storage key is active."}}}}}}
```

## The ResourcesUsersRef object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourcesUsersRef":{"type":"object","description":"Reference to resources owned by a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The GroupUsersRef object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupUsersRef":{"type":"object","description":"Reference to groups a user belongs to (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The S3KeysRef object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"S3KeysRef":{"type":"object","description":"Reference to S3 keys associated with a user (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The GroupMembersRef object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GroupMembersRef":{"type":"object","description":"Reference to group members (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The ResourceGroupsRef object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ResourceGroupsRef":{"type":"object","description":"Reference to resources assigned to a group (without nested items).","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of the resource.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The Volumes object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Volumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The BackupUnitProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"BackupUnitProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource (alphanumeric characters only)."},"password":{"type":"string","description":"The password associated with that resource."},"email":{"type":"string","description":"The email associated with the backup unit. Bear in mind that this email does not be the same email as of the user."}}}}}}
```

## The BackupUnitPropertiesPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"BackupUnitPropertiesPut":{"type":"object","properties":{"name":{"type":"string","readOnly":true,"description":"The name of the  resource (alphanumeric characters only)."},"password":{"type":"string","description":"The password associated with that resource."},"email":{"type":"string","description":"The email associated with the backup unit. Bear in mind that this email does not be the same email as of the user."}}}}}}
```

## The BackupUnit object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"BackupUnit":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["backupunit"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/BackupUnitProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"BackupUnitProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource (alphanumeric characters only)."},"password":{"type":"string","description":"The password associated with that resource."},"email":{"type":"string","description":"The email associated with the backup unit. Bear in mind that this email does not be the same email as of the user."}}}}}}
```

## The BackupUnitPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"BackupUnitPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["backupunit"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/BackupUnitPropertiesPut"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"BackupUnitPropertiesPut":{"type":"object","properties":{"name":{"type":"string","readOnly":true,"description":"The name of the  resource (alphanumeric characters only)."},"password":{"type":"string","description":"The password associated with that resource."},"email":{"type":"string","description":"The email associated with the backup unit. Bear in mind that this email does not be the same email as of the user."}}}}}}
```

## The BackupUnitSSO object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"BackupUnitSSO":{"type":"object","properties":{"ssoUrl":{"type":"string","description":"The backup unit single sign on url","readOnly":true}}}}}}
```

## The S3ObjectStorageSSO object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"S3ObjectStorageSSO":{"type":"object","properties":{"ssoUrl":{"type":"string","description":"The IONOS Cloud Object Storage single sign on url","readOnly":true}}}}}}
```

## The BackupUnits object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"BackupUnits":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/BackupUnit"}}}},"BackupUnit":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["backupunit"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/BackupUnitProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"BackupUnitProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource (alphanumeric characters only)."},"password":{"type":"string","description":"The password associated with that resource."},"email":{"type":"string","description":"The email associated with the backup unit. Bear in mind that this email does not be the same email as of the user."}}}}}}
```

## The LabelProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LabelProperties":{"type":"object","properties":{"key":{"type":"string","description":"A label key"},"value":{"type":"string","description":"A label value"},"resourceId":{"type":"string","description":"The ID of the resource."},"resourceType":{"type":"string","description":"The type of the resource on which the label is applied."},"resourceHref":{"type":"string","description":"URL to the Resource (absolute path) on which the label is applied."}}}}}}
```

## The Label object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Label":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"Label is identified using standard URN.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["label"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/NoStateMetaData"},"properties":{"$ref":"#/components/schemas/LabelProperties"}}},"NoStateMetaData":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true}}},"LabelProperties":{"type":"object","properties":{"key":{"type":"string","description":"A label key"},"value":{"type":"string","description":"A label value"},"resourceId":{"type":"string","description":"The ID of the resource."},"resourceType":{"type":"string","description":"The type of the resource on which the label is applied."},"resourceHref":{"type":"string","description":"URL to the Resource (absolute path) on which the label is applied."}}}}}}
```

## The Labels object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Labels":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the label as a resource collection.","readOnly":true},"type":{"type":"string","description":"The type of resource within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Label"}}}},"Label":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"Label is identified using standard URN.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["label"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/NoStateMetaData"},"properties":{"$ref":"#/components/schemas/LabelProperties"}}},"NoStateMetaData":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true}}},"LabelProperties":{"type":"object","properties":{"key":{"type":"string","description":"A label key"},"value":{"type":"string","description":"A label value"},"resourceId":{"type":"string","description":"The ID of the resource."},"resourceType":{"type":"string","description":"The type of the resource on which the label is applied."},"resourceHref":{"type":"string","description":"URL to the Resource (absolute path) on which the label is applied."}}}}}}
```

## The LabelResourceProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LabelResourceProperties":{"type":"object","properties":{"key":{"type":"string","description":"A label key"},"value":{"type":"string","description":"A label value"}}}}}}
```

## The LabelResource object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LabelResource":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"Label on a resource is identified using label key.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["label"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/NoStateMetaData"},"properties":{"$ref":"#/components/schemas/LabelResourceProperties"}}},"NoStateMetaData":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true}}},"LabelResourceProperties":{"type":"object","properties":{"key":{"type":"string","description":"A label key"},"value":{"type":"string","description":"A label value"}}}}}}
```

## The LabelResources object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"LabelResources":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the label as a resource collection.","readOnly":true},"type":{"type":"string","description":"The type of resource within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/LabelResource"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"LabelResource":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"Label on a resource is identified using label key.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","readOnly":true,"enum":["label"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/NoStateMetaData"},"properties":{"$ref":"#/components/schemas/LabelResourceProperties"}}},"NoStateMetaData":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The time when the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who has created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true}}},"LabelResourceProperties":{"type":"object","properties":{"key":{"type":"string","description":"A label key"},"value":{"type":"string","description":"A label value"}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The S3Bucket object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}}}}}
```

## The KubernetesClusterProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesClusterProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes cluster name. Valid Kubernetes cluster name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"k8sVersion":{"type":"string","description":"The Kubernetes version the cluster is running. This imposes restrictions on what Kubernetes versions can be run in a cluster's nodepools. Additionally, not all Kubernetes versions are viable upgrade targets for all prior versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"availableUpgradeVersions":{"type":"array","description":"List of available versions for upgrading the cluster","items":{"type":"string"}},"viableNodePoolVersions":{"type":"array","description":"List of versions that may be used for node pools under this cluster","items":{"type":"string"}},"public":{"type":"boolean","description":"The indicator if the cluster is public or private. Be aware that setting it to false is currently in beta phase.","default":true},"location":{"type":"string","description":"The location of the cluster if the cluster is private. This property is immutable. The location must be enabled for your contract or you must have a Datacenter within that location. This attribute is mandatory if the cluster is private."},"natGatewayIp":{"type":"string","description":"The nat gateway IP of the cluster if the cluster is private. This property is immutable. Must be a reserved IP in the same location as the cluster's location. This attribute is mandatory if the cluster is private."},"nodeSubnet":{"type":"string","description":"The node subnet of the cluster, if the cluster is private. This property is optional and immutable. Must be a valid CIDR notation for an IPv4 network prefix of 16 bits length."},"apiSubnetAllowList":{"type":"array","description":"Access to the K8s API server is restricted to these CIDRs. Traffic, internal to the cluster, is not affected by this restriction. If no allowlist is specified, access is not restricted. If an IP without subnet mask is provided, the default value is used: 32 for IPv4 and 128 for IPv6.","items":{"type":"string"}},"s3Buckets":{"type":"array","description":"List of Object storage buckets configured for K8s usage. For now it contains only one bucket used to store K8s API audit logs","items":{"$ref":"#/components/schemas/S3Bucket"}}}},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}}}}}
```

## The KubernetesCluster object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesCluster":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["k8s"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesClusterProperties"},"entities":{"$ref":"#/components/schemas/KubernetesClusterEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesClusterProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes cluster name. Valid Kubernetes cluster name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"k8sVersion":{"type":"string","description":"The Kubernetes version the cluster is running. This imposes restrictions on what Kubernetes versions can be run in a cluster's nodepools. Additionally, not all Kubernetes versions are viable upgrade targets for all prior versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"availableUpgradeVersions":{"type":"array","description":"List of available versions for upgrading the cluster","items":{"type":"string"}},"viableNodePoolVersions":{"type":"array","description":"List of versions that may be used for node pools under this cluster","items":{"type":"string"}},"public":{"type":"boolean","description":"The indicator if the cluster is public or private. Be aware that setting it to false is currently in beta phase.","default":true},"location":{"type":"string","description":"The location of the cluster if the cluster is private. This property is immutable. The location must be enabled for your contract or you must have a Datacenter within that location. This attribute is mandatory if the cluster is private."},"natGatewayIp":{"type":"string","description":"The nat gateway IP of the cluster if the cluster is private. This property is immutable. Must be a reserved IP in the same location as the cluster's location. This attribute is mandatory if the cluster is private."},"nodeSubnet":{"type":"string","description":"The node subnet of the cluster, if the cluster is private. This property is optional and immutable. Must be a valid CIDR notation for an IPv4 network prefix of 16 bits length."},"apiSubnetAllowList":{"type":"array","description":"Access to the K8s API server is restricted to these CIDRs. Traffic, internal to the cluster, is not affected by this restriction. If no allowlist is specified, access is not restricted. If an IP without subnet mask is provided, the default value is used: 32 for IPv4 and 128 for IPv6.","items":{"type":"string"}},"s3Buckets":{"type":"array","description":"List of Object storage buckets configured for K8s usage. For now it contains only one bucket used to store K8s API audit logs","items":{"$ref":"#/components/schemas/S3Bucket"}}}},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}},"KubernetesClusterEntities":{"type":"object","properties":{"nodepools":{"$ref":"#/components/schemas/KubernetesNodePools"}}},"KubernetesNodePools":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the Kubernetes node pool as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesNodePool"}}}},"KubernetesNodePool":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolProperties"}}},"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesClusterForPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesClusterForPost":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["k8s"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesClusterPropertiesForPost"},"entities":{"$ref":"#/components/schemas/KubernetesClusterEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesClusterPropertiesForPost":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes cluster name. Valid Kubernetes cluster name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"k8sVersion":{"type":"string","description":"The Kubernetes version that the cluster is running. This limits which Kubernetes versions can run in a cluster's node pools. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"public":{"type":"boolean","description":"The indicator whether the cluster is public or private. Note that the status FALSE is still in the beta phase.","default":true},"location":{"type":"string","description":"This attribute is mandatory if the cluster is private and optional if the cluster is public. The location must be enabled for your contract, or you must have a data center at that location. This property is not adjustable."},"natGatewayIp":{"type":"string","description":"The nat gateway IP of the cluster if the cluster is private. This property is immutable. Must be a reserved IP in the same location as the cluster's location. This attribute is mandatory if the cluster is private."},"nodeSubnet":{"type":"string","description":"The node subnet of the cluster, if the cluster is private. This property is optional and immutable. Must be a valid CIDR notation for an IPv4 network prefix of 16 bits length."},"apiSubnetAllowList":{"type":"array","description":"Access to the K8s API server is restricted to these CIDRs. Intra-cluster traffic is not affected by this restriction. If no AllowList is specified, access is not limited. If an IP is specified without a subnet mask, the default value is 32 for IPv4 and 128 for IPv6.","items":{"type":"string"}},"s3Buckets":{"type":"array","description":"List of Object storage buckets configured for K8s usage. At the moment, it contains only one bucket that is used to store K8s API audit logs.","items":{"$ref":"#/components/schemas/S3Bucket"}}}},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}},"KubernetesClusterEntities":{"type":"object","properties":{"nodepools":{"$ref":"#/components/schemas/KubernetesNodePools"}}},"KubernetesNodePools":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the Kubernetes node pool as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesNodePool"}}}},"KubernetesNodePool":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolProperties"}}},"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesClusterForPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesClusterForPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object.","readOnly":true,"enum":["k8s"]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesClusterPropertiesForPut"},"entities":{"$ref":"#/components/schemas/KubernetesClusterEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesClusterPropertiesForPut":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes cluster name. Valid Kubernetes cluster name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"k8sVersion":{"type":"string","description":"The Kubernetes version that the cluster is running. This limits which Kubernetes versions can run in a cluster's node pools. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"apiSubnetAllowList":{"type":"array","description":"Access to the K8s API server is restricted to these CIDRs. Intra-cluster traffic is not affected by this restriction. If no AllowList is specified, access is not limited. If an IP is specified without a subnet mask, the default value is 32 for IPv4 and 128 for IPv6.","items":{"type":"string"}},"s3Buckets":{"type":"array","description":"List of Object storage buckets configured for K8s usage. At the moment, it contains only one bucket that is used to store K8s API audit logs.","items":{"$ref":"#/components/schemas/S3Bucket"}}}},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}},"KubernetesClusterEntities":{"type":"object","properties":{"nodepools":{"$ref":"#/components/schemas/KubernetesNodePools"}}},"KubernetesNodePools":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the Kubernetes node pool as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesNodePool"}}}},"KubernetesNodePool":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolProperties"}}},"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesClusterEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesClusterEntities":{"type":"object","properties":{"nodepools":{"$ref":"#/components/schemas/KubernetesNodePools"}}},"KubernetesNodePools":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the Kubernetes node pool as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesNodePool"}}}},"KubernetesNodePool":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesClusters object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesClusters":{"type":"object","properties":{"id":{"type":"string","description":"The unique representation of the K8s cluster as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of K8s clusters in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesCluster"}}}},"KubernetesCluster":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["k8s"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesClusterProperties"},"entities":{"$ref":"#/components/schemas/KubernetesClusterEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesClusterProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes cluster name. Valid Kubernetes cluster name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"k8sVersion":{"type":"string","description":"The Kubernetes version the cluster is running. This imposes restrictions on what Kubernetes versions can be run in a cluster's nodepools. Additionally, not all Kubernetes versions are viable upgrade targets for all prior versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"availableUpgradeVersions":{"type":"array","description":"List of available versions for upgrading the cluster","items":{"type":"string"}},"viableNodePoolVersions":{"type":"array","description":"List of versions that may be used for node pools under this cluster","items":{"type":"string"}},"public":{"type":"boolean","description":"The indicator if the cluster is public or private. Be aware that setting it to false is currently in beta phase.","default":true},"location":{"type":"string","description":"The location of the cluster if the cluster is private. This property is immutable. The location must be enabled for your contract or you must have a Datacenter within that location. This attribute is mandatory if the cluster is private."},"natGatewayIp":{"type":"string","description":"The nat gateway IP of the cluster if the cluster is private. This property is immutable. Must be a reserved IP in the same location as the cluster's location. This attribute is mandatory if the cluster is private."},"nodeSubnet":{"type":"string","description":"The node subnet of the cluster, if the cluster is private. This property is optional and immutable. Must be a valid CIDR notation for an IPv4 network prefix of 16 bits length."},"apiSubnetAllowList":{"type":"array","description":"Access to the K8s API server is restricted to these CIDRs. Traffic, internal to the cluster, is not affected by this restriction. If no allowlist is specified, access is not restricted. If an IP without subnet mask is provided, the default value is used: 32 for IPv4 and 128 for IPv6.","items":{"type":"string"}},"s3Buckets":{"type":"array","description":"List of Object storage buckets configured for K8s usage. For now it contains only one bucket used to store K8s API audit logs","items":{"$ref":"#/components/schemas/S3Bucket"}}}},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}},"KubernetesClusterEntities":{"type":"object","properties":{"nodepools":{"$ref":"#/components/schemas/KubernetesNodePools"}}},"KubernetesNodePools":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the Kubernetes node pool as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesNodePool"}}}},"KubernetesNodePool":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolProperties"}}},"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesMaintenanceWindow object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}}}}}
```

## The KubernetesAutoScaling object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}}}}}
```

## The KubernetesClusterPropertiesForPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesClusterPropertiesForPost":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes cluster name. Valid Kubernetes cluster name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"k8sVersion":{"type":"string","description":"The Kubernetes version that the cluster is running. This limits which Kubernetes versions can run in a cluster's node pools. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"public":{"type":"boolean","description":"The indicator whether the cluster is public or private. Note that the status FALSE is still in the beta phase.","default":true},"location":{"type":"string","description":"This attribute is mandatory if the cluster is private and optional if the cluster is public. The location must be enabled for your contract, or you must have a data center at that location. This property is not adjustable."},"natGatewayIp":{"type":"string","description":"The nat gateway IP of the cluster if the cluster is private. This property is immutable. Must be a reserved IP in the same location as the cluster's location. This attribute is mandatory if the cluster is private."},"nodeSubnet":{"type":"string","description":"The node subnet of the cluster, if the cluster is private. This property is optional and immutable. Must be a valid CIDR notation for an IPv4 network prefix of 16 bits length."},"apiSubnetAllowList":{"type":"array","description":"Access to the K8s API server is restricted to these CIDRs. Intra-cluster traffic is not affected by this restriction. If no AllowList is specified, access is not limited. If an IP is specified without a subnet mask, the default value is 32 for IPv4 and 128 for IPv6.","items":{"type":"string"}},"s3Buckets":{"type":"array","description":"List of Object storage buckets configured for K8s usage. At the moment, it contains only one bucket that is used to store K8s API audit logs.","items":{"$ref":"#/components/schemas/S3Bucket"}}}},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}}}}}
```

## The KubernetesClusterPropertiesForPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesClusterPropertiesForPut":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes cluster name. Valid Kubernetes cluster name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"k8sVersion":{"type":"string","description":"The Kubernetes version that the cluster is running. This limits which Kubernetes versions can run in a cluster's node pools. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"apiSubnetAllowList":{"type":"array","description":"Access to the K8s API server is restricted to these CIDRs. Intra-cluster traffic is not affected by this restriction. If no AllowList is specified, access is not limited. If an IP is specified without a subnet mask, the default value is 32 for IPv4 and 128 for IPv6.","items":{"type":"string"}},"s3Buckets":{"type":"array","description":"List of Object storage buckets configured for K8s usage. At the moment, it contains only one bucket that is used to store K8s API audit logs.","items":{"$ref":"#/components/schemas/S3Bucket"}}}},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"S3Bucket":{"required":["name"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Object storage bucket."}}}}}}
```

## The KubernetesNodePoolProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesNodePoolPropertiesForPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolPropertiesForPost":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes. If this field is null or omitted from the request, an available CPU architecture will be automatically selected. Supplying an empty string is not accepted. | **Deprecated**: This property has been deprecated. For a specific use of a CPU type, use \"serverType\" instead.","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesNodePoolPropertiesForPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolPropertiesForPut":{"required":["nodeCount"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesNodePoolServerType object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."}}}}
```

## The KubernetesNodePool object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePool":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesNodePoolForPost object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolForPost":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolPropertiesForPost"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesNodePoolPropertiesForPost":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes. If this field is null or omitted from the request, an available CPU architecture will be automatically selected. Supplying an empty string is not accepted. | **Deprecated**: This property has been deprecated. For a specific use of a CPU type, use \"serverType\" instead.","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesNodePoolForPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolForPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolPropertiesForPut"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesNodePoolPropertiesForPut":{"required":["nodeCount"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesNodePools object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePools":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the Kubernetes node pool as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesNodePool"}}}},"KubernetesNodePool":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["nodepool"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodePoolProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"KubernetesNodePoolProperties":{"required":["availabilityZone","coresCount","datacenterId","name","nodeCount","ramSize","storageSize","storageType"],"type":"object","properties":{"name":{"type":"string","description":"A Kubernetes node pool name. Valid Kubernetes node pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between."},"datacenterId":{"type":"string","description":"The unique identifier of the data center where the worker nodes of the node pool are provisioned. Note that the data center must be located in the same location as the cluster of the node pool or in one of its associated locations. For private Kubernetes, the data centers of all node pools must be placed at the same location."},"nodeCount":{"type":"integer","description":"The number of worker nodes of the node pool."},"serverType":{"$ref":"#/components/schemas/KubernetesNodePoolServerType"},"cpuFamily":{"type":"string","description":"The CPU type for the nodes.\n\n**Deprecated**: This property has been deprecated. For a specific CPU type, use \"serverType\" instead.\n","deprecated":true},"coresCount":{"type":"integer","description":"The total number of cores for the nodes."},"ramSize":{"type":"integer","description":"The RAM size for the nodes. Must be specified in multiples of 1024 MB, with a minimum size of 2048 MB."},"availabilityZone":{"type":"string","description":"The availability zone in which the target VM should be provisioned.","enum":["AUTO","ZONE_1","ZONE_2"]},"storageType":{"type":"string","description":"The storage type for the nodes.","enum":["HDD","SSD"]},"storageSize":{"type":"integer","description":"The allocated volume size in GB. The allocated volume size in GB. To achieve good performance, we recommend a size greater than 100GB for SSD."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."},"maintenanceWindow":{"$ref":"#/components/schemas/KubernetesMaintenanceWindow"},"autoScaling":{"$ref":"#/components/schemas/KubernetesAutoScaling"},"lans":{"type":"array","description":"The array of existing private LANs to attach to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLan"}},"labels":{"$ref":"#/components/schemas/KubernetesNodePoolLabel"},"annotations":{"$ref":"#/components/schemas/KubernetesNodePoolAnnotation"},"publicIps":{"type":"array","description":"Optional array of reserved public IP addresses to be used by the nodes. The IPs must be from the exact location of the node pool's data center. If autoscaling is used, the array must contain one more IP than the maximum possible number of nodes (nodeCount+1 for a fixed number of nodes or maxNodeCount+1). The extra IP is used when the nodes are rebuilt.","items":{"type":"string"}},"availableUpgradeVersions":{"type":"array","description":"The list of available versions for upgrading the node pool.","items":{"type":"string"}}}},"KubernetesNodePoolServerType":{"type":"string","enum":["DedicatedCore","VCPU"],"default":"DedicatedCore","description":"The type of server for the Kubernetes node pool can be either 'DedicatedCore' (nodes with dedicated CPU cores) or 'VCPU' (nodes with shared CPU cores). This selection corresponds to the server type for the compute engine."},"KubernetesMaintenanceWindow":{"required":["dayOfTheWeek","time"],"type":"object","properties":{"dayOfTheWeek":{"type":"string","description":"The weekday for a maintenance window.","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},"time":{"type":"string","description":"The time to use for a maintenance window. Accepted formats are: HH:mm:ss; HH:mm:ss\"Z\"; HH:mm:ssZ. This time may vary by 15 minutes."}}},"KubernetesAutoScaling":{"required":["maxNodeCount","minNodeCount"],"type":"object","properties":{"minNodeCount":{"type":"integer","description":"The minimum number of working nodes that the managed node pool can scale must be >= 1 and >= nodeCount. Required if autoScaling is specified.","format":"int32"},"maxNodeCount":{"type":"integer","description":"The maximum number of worker nodes that the managed node pool can scale in. Must be >= minNodeCount and must be >= nodeCount. Required if autoScaling is specified.","format":"int32"}}},"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}},"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."},"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The KubernetesNodeProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodeProperties":{"required":["k8sVersion","name"],"type":"object","properties":{"name":{"type":"string","description":"The Kubernetes node name."},"publicIP":{"type":"string","description":"The public IP associated with the node."},"privateIP":{"type":"string","description":"The private IP associated with the node."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."}}}}}}
```

## The KubernetesNode object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNode":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["node"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/KubernetesNodeMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodeProperties"}}},"KubernetesNodeMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"The resource entity tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity tags are also added as 'ETag' response headers to requests that do not use the 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The date the resource was created.","format":"date-time","readOnly":true},"lastModifiedDate":{"type":"string","description":"The date the resource was last modified.","format":"date-time","readOnly":true},"state":{"type":"string","description":"The resource state.","readOnly":true,"enum":["PROVISIONING","PROVISIONED","READY","TERMINATING","REBUILDING","BUSY"]},"lastSoftwareUpdatedDate":{"type":"string","description":"The date when the software on the node was last updated.","format":"date-time","readOnly":true}}},"KubernetesNodeProperties":{"required":["k8sVersion","name"],"type":"object","properties":{"name":{"type":"string","description":"The Kubernetes node name."},"publicIP":{"type":"string","description":"The public IP associated with the node."},"privateIP":{"type":"string","description":"The private IP associated with the node."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."}}}}}}
```

## The KubernetesNodes object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodes":{"type":"object","properties":{"id":{"type":"string","description":"A unique representation of the Kubernetes node pool as a resource collection.","readOnly":true},"type":{"type":"string","description":"The resource type within a collection.","readOnly":true,"enum":["collection"]},"href":{"type":"string","description":"The URL to the collection representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/KubernetesNode"}}}},"KubernetesNode":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The object type.","readOnly":true,"enum":["node"]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/KubernetesNodeMetadata"},"properties":{"$ref":"#/components/schemas/KubernetesNodeProperties"}}},"KubernetesNodeMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"The resource entity tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity tags are also added as 'ETag' response headers to requests that do not use the 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The date the resource was created.","format":"date-time","readOnly":true},"lastModifiedDate":{"type":"string","description":"The date the resource was last modified.","format":"date-time","readOnly":true},"state":{"type":"string","description":"The resource state.","readOnly":true,"enum":["PROVISIONING","PROVISIONED","READY","TERMINATING","REBUILDING","BUSY"]},"lastSoftwareUpdatedDate":{"type":"string","description":"The date when the software on the node was last updated.","format":"date-time","readOnly":true}}},"KubernetesNodeProperties":{"required":["k8sVersion","name"],"type":"object","properties":{"name":{"type":"string","description":"The Kubernetes node name."},"publicIP":{"type":"string","description":"The public IP associated with the node."},"privateIP":{"type":"string","description":"The private IP associated with the node."},"k8sVersion":{"type":"string","description":"The Kubernetes version running in the node pool. Note that this imposes restrictions on which Kubernetes versions can run in the node pools of a cluster. Also, not all Kubernetes versions are suitable upgrade targets for all earlier versions."}}}}}}
```

## The KubernetesNodePoolLanRoutes object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}}}}}
```

## The KubernetesNodePoolLan object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolLan":{"required":["id"],"type":"object","properties":{"datacenterId":{"type":"string","description":"The datacenter ID, requires system privileges, for internal usage only"},"id":{"type":"integer","description":"The LAN ID of an existing LAN at the related data center","format":"int32"},"dhcp":{"type":"boolean","description":"Specifies whether the Kubernetes node pool LAN reserves an IP with DHCP."},"routes":{"type":"array","description":"The array of additional LANs attached to worker nodes.","items":{"$ref":"#/components/schemas/KubernetesNodePoolLanRoutes"}}}},"KubernetesNodePoolLanRoutes":{"type":"object","properties":{"network":{"type":"string","description":"IPv4 or IPv6 CIDR to be routed via the interface."},"gatewayIp":{"type":"string","description":"IPv4 or IPv6 Gateway IP for the route."}}}}}}
```

## The NatGateway object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGateway":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"},"entities":{"$ref":"#/components/schemas/NatGatewayEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}},"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The NatGatewayPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}}}}}
```

## The NatGatewayProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}}}}}
```

## The NatGatewayLanProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}}}}}
```

## The NatGatewayEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The NatGateways object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGateways":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGateway"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NatGateway":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayProperties"},"entities":{"$ref":"#/components/schemas/NatGatewayEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NatGatewayProperties":{"required":["name","publicIps"],"type":"object","properties":{"name":{"type":"string","description":"Name of the NAT Gateway."},"publicIps":{"type":"array","description":"Collection of public IP addresses of the NAT Gateway. Should be customer reserved IP addresses in that location.","items":{"type":"string"}},"lans":{"type":"array","description":"Collection of LANs connected to the NAT Gateway. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"$ref":"#/components/schemas/NatGatewayLanProperties"}}}},"NatGatewayLanProperties":{"required":["id"],"type":"object","properties":{"id":{"type":"integer","description":"Id for the LAN connected to the NAT Gateway","format":"int32"},"gatewayIps":{"type":"array","description":"Collection of gateway IP addresses of the NAT Gateway. Will be auto-generated if not provided. Should ideally be an IP belonging to the same subnet as the LAN","items":{"type":"string"}}}},"NatGatewayEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/NatGatewayRules"},"flowlogs":{"$ref":"#/components/schemas/FlowLogs"}}},"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The NatGatewayRules object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NatGatewayRule"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The NatGatewayRule object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The NatGatewayRulePut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayRulePut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/NatGatewayRuleProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The NatGatewayRuleProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayRuleProperties":{"required":["name","publicIp","sourceSubnet"],"type":"object","properties":{"name":{"type":"string","description":"The name of the NAT Gateway rule."},"type":{"type":"string","description":"Type of the NAT Gateway rule.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleType"}]},"protocol":{"type":"string","description":"Protocol of the NAT Gateway rule. Defaults to ALL. If protocol is 'ICMP' then targetPortRange start and end cannot be set.","allOf":[{"$ref":"#/components/schemas/NatGatewayRuleProtocol"}]},"sourceSubnet":{"type":"string","description":"Source subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets source IP address."},"publicIp":{"type":"string","description":"Public IP address of the NAT Gateway rule. Specifies the address used for masking outgoing packets source address field. Should be one of the customer reserved IP address already configured on the NAT Gateway resource"},"targetSubnet":{"type":"string","description":"Target or destination subnet of the NAT Gateway rule. For SNAT rules it specifies which packets this translation rule applies to based on the packets destination IP address. If none is provided, rule will match any address."},"targetPortRange":{"$ref":"#/components/schemas/TargetPortRange"}}},"NatGatewayRuleType":{"type":"string","enum":["SNAT"]},"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]},"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The NatGatewayRuleType object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayRuleType":{"type":"string","enum":["SNAT"]}}}}
```

## The NatGatewayRuleProtocol object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NatGatewayRuleProtocol":{"type":"string","enum":["TCP","UDP","ICMP","ALL"]}}}}
```

## The TargetPortRange object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetPortRange":{"type":"object","properties":{"start":{"type":"integer","description":"Target port range start associated with the NAT Gateway rule.","format":"int32"},"end":{"type":"integer","description":"Target port range end associated with the NAT Gateway rule.","format":"int32"}}}}}}
```

## The KubernetesNodePoolLabel object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolLabel":{"type":"object","additionalProperties":{"type":"string"},"description":"The labels attached to the node pool."}}}}
```

## The KubernetesNodePoolAnnotation object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"KubernetesNodePoolAnnotation":{"type":"object","additionalProperties":{"type":"string"},"description":"The annotations attached to the node pool."}}}}
```

## The NetworkLoadBalancer object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/NetworkLoadBalancerEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The NetworkLoadBalancerProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}}}}}
```

## The NetworkLoadBalancerEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The NetworkLoadBalancers object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NetworkLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/NetworkLoadBalancerEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"NetworkLoadBalancerEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"forwardingrules":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRules"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The ApplicationLoadBalancerProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The Application Load Balancer name."},"listenerLan":{"type":"integer","description":"The ID of the listening (inbound) LAN."},"ips":{"type":"array","description":"Collection of the Application Load Balancer IP addresses. (Inbound and outbound) IPs of the 'listenerLan' are customer-reserved public IPs for the public load balancers, and private IPs for the private load balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"The ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with the subnet mask of the Application Load Balancer. IPs must contain valid a subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}}}}}
```

## The ApplicationLoadBalancerEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerEntities":{"type":"object","properties":{"forwardingrules":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRules"}}},"ApplicationLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"ApplicationLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRuleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ApplicationLoadBalancerForwardingRuleProperties":{"required":["listenerIp","listenerPort","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Application Load Balancer forwarding rule."},"protocol":{"type":"string","description":"The balancing protocol.","enum":["HTTP"]},"listenerIp":{"type":"string","description":"The listening (inbound) IP."},"listenerPort":{"type":"integer","description":"The listening (inbound) port number; the valid range is 1 to 65535.","format":"int32"},"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"serverCertificates":{"type":"array","description":"Array of items in the collection.","items":{"type":"string","format":"uuid"}},"httpRules":{"type":"array","description":"An array of items in the collection. The original order of rules is preserved during processing, except that rules of the 'FORWARD' type are processed after the rules with other defined actions. The relative order of the 'FORWARD' type rules is also preserved during the processing.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRule"}}}},"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The ApplicationLoadBalancer object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/ApplicationLoadBalancerEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ApplicationLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The Application Load Balancer name."},"listenerLan":{"type":"integer","description":"The ID of the listening (inbound) LAN."},"ips":{"type":"array","description":"Collection of the Application Load Balancer IP addresses. (Inbound and outbound) IPs of the 'listenerLan' are customer-reserved public IPs for the public load balancers, and private IPs for the private load balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"The ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with the subnet mask of the Application Load Balancer. IPs must contain valid a subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"ApplicationLoadBalancerEntities":{"type":"object","properties":{"forwardingrules":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRules"}}},"ApplicationLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"ApplicationLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRuleProperties"}}},"ApplicationLoadBalancerForwardingRuleProperties":{"required":["listenerIp","listenerPort","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Application Load Balancer forwarding rule."},"protocol":{"type":"string","description":"The balancing protocol.","enum":["HTTP"]},"listenerIp":{"type":"string","description":"The listening (inbound) IP."},"listenerPort":{"type":"integer","description":"The listening (inbound) port number; the valid range is 1 to 65535.","format":"int32"},"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"serverCertificates":{"type":"array","description":"Array of items in the collection.","items":{"type":"string","format":"uuid"}},"httpRules":{"type":"array","description":"An array of items in the collection. The original order of rules is preserved during processing, except that rules of the 'FORWARD' type are processed after the rules with other defined actions. The relative order of the 'FORWARD' type rules is also preserved during the processing.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRule"}}}},"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The ApplicationLoadBalancers object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/ApplicationLoadBalancer"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"ApplicationLoadBalancer":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerProperties"},"entities":{"$ref":"#/components/schemas/ApplicationLoadBalancerEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ApplicationLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The Application Load Balancer name."},"listenerLan":{"type":"integer","description":"The ID of the listening (inbound) LAN."},"ips":{"type":"array","description":"Collection of the Application Load Balancer IP addresses. (Inbound and outbound) IPs of the 'listenerLan' are customer-reserved public IPs for the public load balancers, and private IPs for the private load balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"The ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with the subnet mask of the Application Load Balancer. IPs must contain valid a subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}},"ApplicationLoadBalancerEntities":{"type":"object","properties":{"forwardingrules":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRules"}}},"ApplicationLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"ApplicationLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRuleProperties"}}},"ApplicationLoadBalancerForwardingRuleProperties":{"required":["listenerIp","listenerPort","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Application Load Balancer forwarding rule."},"protocol":{"type":"string","description":"The balancing protocol.","enum":["HTTP"]},"listenerIp":{"type":"string","description":"The listening (inbound) IP."},"listenerPort":{"type":"integer","description":"The listening (inbound) port number; the valid range is 1 to 65535.","format":"int32"},"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"serverCertificates":{"type":"array","description":"Array of items in the collection.","items":{"type":"string","format":"uuid"}},"httpRules":{"type":"array","description":"An array of items in the collection. The original order of rules is preserved during processing, except that rules of the 'FORWARD' type are processed after the rules with other defined actions. The relative order of the 'FORWARD' type rules is also preserved during the processing.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRule"}}}},"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The NetworkLoadBalancerPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NetworkLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer."},"listenerLan":{"type":"integer","description":"ID of the listening LAN (inbound)."},"ips":{"type":"array","description":"Collection of the Network Load Balancer IP addresses. (Inbound and outbound) IPs of the listenerLan must be customer-reserved IPs for public Load Balancers, and private IPs for private Load Balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with subnet mask of the Network Load Balancer. IPs must contain a valid subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}}}}}
```

## The ApplicationLoadBalancerPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"ApplicationLoadBalancerProperties":{"required":["listenerLan","name","targetLan"],"type":"object","properties":{"name":{"type":"string","description":"The Application Load Balancer name."},"listenerLan":{"type":"integer","description":"The ID of the listening (inbound) LAN."},"ips":{"type":"array","description":"Collection of the Application Load Balancer IP addresses. (Inbound and outbound) IPs of the 'listenerLan' are customer-reserved public IPs for the public load balancers, and private IPs for the private load balancers.","items":{"type":"string"}},"targetLan":{"type":"integer","description":"The ID of the balanced private target LAN (outbound)."},"lbPrivateIps":{"type":"array","description":"Collection of private IP addresses with the subnet mask of the Application Load Balancer. IPs must contain valid a subnet mask. If no IP is provided, the system will generate an IP with /24 subnet.","items":{"type":"string"}},"centralLogging":{"type":"boolean","description":"Turn logging on and off for this product. Default value is 'false'."},"loggingFormat":{"type":"string","description":"Specifies the format of the logs."}}}}}}
```

## The NetworkLoadBalancerForwardingRule object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The NetworkLoadBalancerForwardingRulePut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerForwardingRulePut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The NetworkLoadBalancerForwardingRules object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"NetworkLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The NetworkLoadBalancerForwardingRuleProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerForwardingRuleProperties":{"required":["algorithm","listenerIp","listenerPort","name","protocol","targets"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Network Load Balancer forwarding rule."},"algorithm":{"type":"string","description":"Balancing algorithm","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"Balancing protocol","enum":["HTTP","TCP"]},"listenerIp":{"type":"string","description":"Listening (inbound) IP."},"listenerPort":{"type":"integer","description":"Listening (inbound) port number; valid range is 1 to 65535.","format":"int32"},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleHealthCheck"},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTarget"}}}},"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}},"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The NetworkLoadBalancerForwardingRuleHealthCheck object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerForwardingRuleHealthCheck":{"type":"object","properties":{"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"connectTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for a connection attempt to a target to succeed; default is 5000 (five seconds).","format":"int32"},"targetTimeout":{"type":"integer","description":"The maximum time in milliseconds that a target can remain inactive; default is 50,000 (50 seconds).","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535 and default is three reconnection attempts.","format":"int32"}}}}}}
```

## The NetworkLoadBalancerForwardingRuleTarget object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerForwardingRuleTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP of the balanced target VM."},"port":{"type":"integer","description":"The port of the balanced target service; valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1. Targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best to assign weights in the middle of the range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheck":{"$ref":"#/components/schemas/NetworkLoadBalancerForwardingRuleTargetHealthCheck"}}},"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The NetworkLoadBalancerForwardingRuleTargetHealthCheck object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"NetworkLoadBalancerForwardingRuleTargetHealthCheck":{"type":"object","properties":{"check":{"type":"boolean","description":"Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target."},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; default is 2000.","format":"int32"},"maintenance":{"type":"boolean","description":"Maintenance mode prevents the target from receiving balanced traffic."}}}}}}
```

## The ApplicationLoadBalancerForwardingRule object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRuleProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ApplicationLoadBalancerForwardingRuleProperties":{"required":["listenerIp","listenerPort","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Application Load Balancer forwarding rule."},"protocol":{"type":"string","description":"The balancing protocol.","enum":["HTTP"]},"listenerIp":{"type":"string","description":"The listening (inbound) IP."},"listenerPort":{"type":"integer","description":"The listening (inbound) port number; the valid range is 1 to 65535.","format":"int32"},"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"serverCertificates":{"type":"array","description":"Array of items in the collection.","items":{"type":"string","format":"uuid"}},"httpRules":{"type":"array","description":"An array of items in the collection. The original order of rules is preserved during processing, except that rules of the 'FORWARD' type are processed after the rules with other defined actions. The relative order of the 'FORWARD' type rules is also preserved during the processing.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRule"}}}},"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}}}}}
```

## The ApplicationLoadBalancerForwardingRules object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerForwardingRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"ApplicationLoadBalancerForwardingRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRuleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"ApplicationLoadBalancerForwardingRuleProperties":{"required":["listenerIp","listenerPort","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Application Load Balancer forwarding rule."},"protocol":{"type":"string","description":"The balancing protocol.","enum":["HTTP"]},"listenerIp":{"type":"string","description":"The listening (inbound) IP."},"listenerPort":{"type":"integer","description":"The listening (inbound) port number; the valid range is 1 to 65535.","format":"int32"},"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"serverCertificates":{"type":"array","description":"Array of items in the collection.","items":{"type":"string","format":"uuid"}},"httpRules":{"type":"array","description":"An array of items in the collection. The original order of rules is preserved during processing, except that rules of the 'FORWARD' type are processed after the rules with other defined actions. The relative order of the 'FORWARD' type rules is also preserved during the processing.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRule"}}}},"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The ApplicationLoadBalancerForwardingRuleProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerForwardingRuleProperties":{"required":["listenerIp","listenerPort","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Application Load Balancer forwarding rule."},"protocol":{"type":"string","description":"The balancing protocol.","enum":["HTTP"]},"listenerIp":{"type":"string","description":"The listening (inbound) IP."},"listenerPort":{"type":"integer","description":"The listening (inbound) port number; the valid range is 1 to 65535.","format":"int32"},"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"serverCertificates":{"type":"array","description":"Array of items in the collection.","items":{"type":"string","format":"uuid"}},"httpRules":{"type":"array","description":"An array of items in the collection. The original order of rules is preserved during processing, except that rules of the 'FORWARD' type are processed after the rules with other defined actions. The relative order of the 'FORWARD' type rules is also preserved during the processing.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRule"}}}},"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}}}}}
```

## The ApplicationLoadBalancerHttpRule object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}}}}}
```

## The ApplicationLoadBalancerHttpRuleCondition object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}}}}}
```

## The TargetGroup object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/TargetGroupProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"TargetGroupProperties":{"required":["algorithm","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The target group name."},"algorithm":{"type":"string","description":"The balancing algorithm. A balancing algorithm consists of predefined rules with the logic that a load balancer uses to distribute network traffic between servers.\n\n- **Round Robin**: Targets are served alternately according to their weighting.\n\n- **Least Connection**: The target with the least active connection is served.\n\n- **Random**: The targets are served based on a consistent pseudorandom algorithm.\n\n- **Source IP**: It is ensured that the same client IP address reaches the same target.","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"The forwarding protocol. Only the value 'HTTP' is allowed.","enum":["HTTP"]},"protocolVersion":{"type":"string","description":"The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.","enum":["HTTP1","HTTP2"]},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/TargetGroupTarget"}},"healthCheck":{"$ref":"#/components/schemas/TargetGroupHealthCheck"},"httpHealthCheck":{"$ref":"#/components/schemas/TargetGroupHttpHealthCheck"}}},"TargetGroupTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP address of the balanced target."},"port":{"type":"integer","description":"The port of the balanced target service; the valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"The traffic is distributed proportionally to target weight, which is the ratio of the total weight of all targets. A target with higher weight receives a larger share of traffic. The valid range is from 0 to 256; the default value is '1'. Targets with a weight of '0' do not participate in load balancing but still accept persistent connections. We recommend using values in the middle range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheckEnabled":{"type":"boolean","description":"When the health check is enabled, the target is available only when it accepts regular TCP or HTTP connection attempts for state checking. The state check consists of one connection attempt with the target's address and port. The default value is 'TRUE'."},"maintenanceEnabled":{"type":"boolean","description":"When the maintenance mode is enabled, the target is prevented from receiving traffic; the default value is 'FALSE'."}}},"TargetGroupHealthCheck":{"type":"object","properties":{"checkTimeout":{"type":"integer","description":"The maximum time in milliseconds is to wait for a target to respond to a check. For target VMs with a 'Check Interval' set, the smaller of the two values is used once the TCP connection is established.","format":"int32"},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; the default value is '2000'.","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. The valid range is '0 to 65535'; the default value is '3'.","format":"int32"}}},"TargetGroupHttpHealthCheck":{"required":["matchType","response"],"type":"object","properties":{"path":{"type":"string","description":"The destination URL for HTTP the health check; the default is '/'."},"method":{"type":"string","description":"The method used for the health check request.","enum":["HEAD","PUT","POST","GET","TRACE","PATCH"]},"matchType":{"type":"string","description":"Specify the target's response type to match ALB's request.","enum":["STATUS_CODE","RESPONSE_BODY"]},"response":{"type":"string","description":"The response returned by the request. It can be a status code or a response body depending on the definition of 'matchType'."},"regex":{"type":"boolean","description":"Specifies whether to use a regular expression to parse the response body; the default value is 'FALSE'.\n\nBy using regular expressions, you can flexibly customize the expected response from a healthy server."},"negate":{"type":"boolean","description":"Specifies whether to negate an individual entry; the default value is 'FALSE'."}}}}}}
```

## The TargetGroups object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/TargetGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetMandatory"},"limit":{"$ref":"#/components/schemas/PaginationLimitMandatory"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"TargetGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/TargetGroupProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"TargetGroupProperties":{"required":["algorithm","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The target group name."},"algorithm":{"type":"string","description":"The balancing algorithm. A balancing algorithm consists of predefined rules with the logic that a load balancer uses to distribute network traffic between servers.\n\n- **Round Robin**: Targets are served alternately according to their weighting.\n\n- **Least Connection**: The target with the least active connection is served.\n\n- **Random**: The targets are served based on a consistent pseudorandom algorithm.\n\n- **Source IP**: It is ensured that the same client IP address reaches the same target.","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"The forwarding protocol. Only the value 'HTTP' is allowed.","enum":["HTTP"]},"protocolVersion":{"type":"string","description":"The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.","enum":["HTTP1","HTTP2"]},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/TargetGroupTarget"}},"healthCheck":{"$ref":"#/components/schemas/TargetGroupHealthCheck"},"httpHealthCheck":{"$ref":"#/components/schemas/TargetGroupHttpHealthCheck"}}},"TargetGroupTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP address of the balanced target."},"port":{"type":"integer","description":"The port of the balanced target service; the valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"The traffic is distributed proportionally to target weight, which is the ratio of the total weight of all targets. A target with higher weight receives a larger share of traffic. The valid range is from 0 to 256; the default value is '1'. Targets with a weight of '0' do not participate in load balancing but still accept persistent connections. We recommend using values in the middle range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheckEnabled":{"type":"boolean","description":"When the health check is enabled, the target is available only when it accepts regular TCP or HTTP connection attempts for state checking. The state check consists of one connection attempt with the target's address and port. The default value is 'TRUE'."},"maintenanceEnabled":{"type":"boolean","description":"When the maintenance mode is enabled, the target is prevented from receiving traffic; the default value is 'FALSE'."}}},"TargetGroupHealthCheck":{"type":"object","properties":{"checkTimeout":{"type":"integer","description":"The maximum time in milliseconds is to wait for a target to respond to a check. For target VMs with a 'Check Interval' set, the smaller of the two values is used once the TCP connection is established.","format":"int32"},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; the default value is '2000'.","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. The valid range is '0 to 65535'; the default value is '3'.","format":"int32"}}},"TargetGroupHttpHealthCheck":{"required":["matchType","response"],"type":"object","properties":{"path":{"type":"string","description":"The destination URL for HTTP the health check; the default is '/'."},"method":{"type":"string","description":"The method used for the health check request.","enum":["HEAD","PUT","POST","GET","TRACE","PATCH"]},"matchType":{"type":"string","description":"Specify the target's response type to match ALB's request.","enum":["STATUS_CODE","RESPONSE_BODY"]},"response":{"type":"string","description":"The response returned by the request. It can be a status code or a response body depending on the definition of 'matchType'."},"regex":{"type":"boolean","description":"Specifies whether to use a regular expression to parse the response body; the default value is 'FALSE'.\n\nBy using regular expressions, you can flexibly customize the expected response from a healthy server."},"negate":{"type":"boolean","description":"Specifies whether to negate an individual entry; the default value is 'FALSE'."}}},"PaginationOffsetMandatory":{"type":"number","description":"The offset, specified in the request (if not is specified, 0 is used by default)."},"PaginationLimitMandatory":{"type":"number","description":"The limit, specified in the request (if not specified, the endpoint's default pagination limit is used)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The TargetGroupPut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetGroupPut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/TargetGroupProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"TargetGroupProperties":{"required":["algorithm","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The target group name."},"algorithm":{"type":"string","description":"The balancing algorithm. A balancing algorithm consists of predefined rules with the logic that a load balancer uses to distribute network traffic between servers.\n\n- **Round Robin**: Targets are served alternately according to their weighting.\n\n- **Least Connection**: The target with the least active connection is served.\n\n- **Random**: The targets are served based on a consistent pseudorandom algorithm.\n\n- **Source IP**: It is ensured that the same client IP address reaches the same target.","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"The forwarding protocol. Only the value 'HTTP' is allowed.","enum":["HTTP"]},"protocolVersion":{"type":"string","description":"The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.","enum":["HTTP1","HTTP2"]},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/TargetGroupTarget"}},"healthCheck":{"$ref":"#/components/schemas/TargetGroupHealthCheck"},"httpHealthCheck":{"$ref":"#/components/schemas/TargetGroupHttpHealthCheck"}}},"TargetGroupTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP address of the balanced target."},"port":{"type":"integer","description":"The port of the balanced target service; the valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"The traffic is distributed proportionally to target weight, which is the ratio of the total weight of all targets. A target with higher weight receives a larger share of traffic. The valid range is from 0 to 256; the default value is '1'. Targets with a weight of '0' do not participate in load balancing but still accept persistent connections. We recommend using values in the middle range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheckEnabled":{"type":"boolean","description":"When the health check is enabled, the target is available only when it accepts regular TCP or HTTP connection attempts for state checking. The state check consists of one connection attempt with the target's address and port. The default value is 'TRUE'."},"maintenanceEnabled":{"type":"boolean","description":"When the maintenance mode is enabled, the target is prevented from receiving traffic; the default value is 'FALSE'."}}},"TargetGroupHealthCheck":{"type":"object","properties":{"checkTimeout":{"type":"integer","description":"The maximum time in milliseconds is to wait for a target to respond to a check. For target VMs with a 'Check Interval' set, the smaller of the two values is used once the TCP connection is established.","format":"int32"},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; the default value is '2000'.","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. The valid range is '0 to 65535'; the default value is '3'.","format":"int32"}}},"TargetGroupHttpHealthCheck":{"required":["matchType","response"],"type":"object","properties":{"path":{"type":"string","description":"The destination URL for HTTP the health check; the default is '/'."},"method":{"type":"string","description":"The method used for the health check request.","enum":["HEAD","PUT","POST","GET","TRACE","PATCH"]},"matchType":{"type":"string","description":"Specify the target's response type to match ALB's request.","enum":["STATUS_CODE","RESPONSE_BODY"]},"response":{"type":"string","description":"The response returned by the request. It can be a status code or a response body depending on the definition of 'matchType'."},"regex":{"type":"boolean","description":"Specifies whether to use a regular expression to parse the response body; the default value is 'FALSE'.\n\nBy using regular expressions, you can flexibly customize the expected response from a healthy server."},"negate":{"type":"boolean","description":"Specifies whether to negate an individual entry; the default value is 'FALSE'."}}}}}}
```

## The TargetGroupProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetGroupProperties":{"required":["algorithm","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The target group name."},"algorithm":{"type":"string","description":"The balancing algorithm. A balancing algorithm consists of predefined rules with the logic that a load balancer uses to distribute network traffic between servers.\n\n- **Round Robin**: Targets are served alternately according to their weighting.\n\n- **Least Connection**: The target with the least active connection is served.\n\n- **Random**: The targets are served based on a consistent pseudorandom algorithm.\n\n- **Source IP**: It is ensured that the same client IP address reaches the same target.","enum":["ROUND_ROBIN","LEAST_CONNECTION","RANDOM","SOURCE_IP"]},"protocol":{"type":"string","description":"The forwarding protocol. Only the value 'HTTP' is allowed.","enum":["HTTP"]},"protocolVersion":{"type":"string","description":"The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.","enum":["HTTP1","HTTP2"]},"targets":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/TargetGroupTarget"}},"healthCheck":{"$ref":"#/components/schemas/TargetGroupHealthCheck"},"httpHealthCheck":{"$ref":"#/components/schemas/TargetGroupHttpHealthCheck"}}},"TargetGroupTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP address of the balanced target."},"port":{"type":"integer","description":"The port of the balanced target service; the valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"The traffic is distributed proportionally to target weight, which is the ratio of the total weight of all targets. A target with higher weight receives a larger share of traffic. The valid range is from 0 to 256; the default value is '1'. Targets with a weight of '0' do not participate in load balancing but still accept persistent connections. We recommend using values in the middle range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheckEnabled":{"type":"boolean","description":"When the health check is enabled, the target is available only when it accepts regular TCP or HTTP connection attempts for state checking. The state check consists of one connection attempt with the target's address and port. The default value is 'TRUE'."},"maintenanceEnabled":{"type":"boolean","description":"When the maintenance mode is enabled, the target is prevented from receiving traffic; the default value is 'FALSE'."}}},"TargetGroupHealthCheck":{"type":"object","properties":{"checkTimeout":{"type":"integer","description":"The maximum time in milliseconds is to wait for a target to respond to a check. For target VMs with a 'Check Interval' set, the smaller of the two values is used once the TCP connection is established.","format":"int32"},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; the default value is '2000'.","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. The valid range is '0 to 65535'; the default value is '3'.","format":"int32"}}},"TargetGroupHttpHealthCheck":{"required":["matchType","response"],"type":"object","properties":{"path":{"type":"string","description":"The destination URL for HTTP the health check; the default is '/'."},"method":{"type":"string","description":"The method used for the health check request.","enum":["HEAD","PUT","POST","GET","TRACE","PATCH"]},"matchType":{"type":"string","description":"Specify the target's response type to match ALB's request.","enum":["STATUS_CODE","RESPONSE_BODY"]},"response":{"type":"string","description":"The response returned by the request. It can be a status code or a response body depending on the definition of 'matchType'."},"regex":{"type":"boolean","description":"Specifies whether to use a regular expression to parse the response body; the default value is 'FALSE'.\n\nBy using regular expressions, you can flexibly customize the expected response from a healthy server."},"negate":{"type":"boolean","description":"Specifies whether to negate an individual entry; the default value is 'FALSE'."}}}}}}
```

## The TargetGroupHealthCheck object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetGroupHealthCheck":{"type":"object","properties":{"checkTimeout":{"type":"integer","description":"The maximum time in milliseconds is to wait for a target to respond to a check. For target VMs with a 'Check Interval' set, the smaller of the two values is used once the TCP connection is established.","format":"int32"},"checkInterval":{"type":"integer","description":"The interval in milliseconds between consecutive health checks; the default value is '2000'.","format":"int32"},"retries":{"type":"integer","description":"The maximum number of attempts to reconnect to a target after a connection failure. The valid range is '0 to 65535'; the default value is '3'.","format":"int32"}}}}}}
```

## The TargetGroupHttpHealthCheck object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetGroupHttpHealthCheck":{"required":["matchType","response"],"type":"object","properties":{"path":{"type":"string","description":"The destination URL for HTTP the health check; the default is '/'."},"method":{"type":"string","description":"The method used for the health check request.","enum":["HEAD","PUT","POST","GET","TRACE","PATCH"]},"matchType":{"type":"string","description":"Specify the target's response type to match ALB's request.","enum":["STATUS_CODE","RESPONSE_BODY"]},"response":{"type":"string","description":"The response returned by the request. It can be a status code or a response body depending on the definition of 'matchType'."},"regex":{"type":"boolean","description":"Specifies whether to use a regular expression to parse the response body; the default value is 'FALSE'.\n\nBy using regular expressions, you can flexibly customize the expected response from a healthy server."},"negate":{"type":"boolean","description":"Specifies whether to negate an individual entry; the default value is 'FALSE'."}}}}}}
```

## The TargetGroupTarget object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TargetGroupTarget":{"required":["ip","port","weight"],"type":"object","properties":{"ip":{"type":"string","description":"The IP address of the balanced target."},"port":{"type":"integer","description":"The port of the balanced target service; the valid range is 1 to 65535.","format":"int32"},"weight":{"type":"integer","description":"The traffic is distributed proportionally to target weight, which is the ratio of the total weight of all targets. A target with higher weight receives a larger share of traffic. The valid range is from 0 to 256; the default value is '1'. Targets with a weight of '0' do not participate in load balancing but still accept persistent connections. We recommend using values in the middle range to leave room for later adjustments.","format":"int32"},"proxyProtocol":{"type":"string","description":"Proxy protocol version.","default":"none","enum":["none","v1","v2","v2ssl"]},"healthCheckEnabled":{"type":"boolean","description":"When the health check is enabled, the target is available only when it accepts regular TCP or HTTP connection attempts for state checking. The state check consists of one connection attempt with the target's address and port. The default value is 'TRUE'."},"maintenanceEnabled":{"type":"boolean","description":"When the maintenance mode is enabled, the target is prevented from receiving traffic; the default value is 'FALSE'."}}}}}}
```

## The Templates object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Templates":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Template"}}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"Template":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/TemplateProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"TemplateProperties":{"required":["cores","name","ram","storageSize","category"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"cores":{"type":"number","description":"The CPU cores count."},"ram":{"type":"number","description":"The RAM size in MB."},"storageSize":{"type":"number","description":"The storage size in GB."},"storageType":{"type":"string","readOnly":true,"description":"The performance class type for the storage. The only possible value is 'SSD Premium'"},"category":{"type":"string","description":"The description of the template."},"gpus":{"type":"array","description":"List of GPUs assigned to the template","items":{"$ref":"#/components/schemas/GpuTemplate"}}}},"GpuTemplate":{"type":"object","properties":{"vendor":{"type":"string","description":"The name of the vendor"},"model":{"type":"string","description":"The name of the GPU card model"},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved)."},"count":{"type":"integer","description":"The number of GPUs to be provisioned"}}}}}}
```

## The ApplicationLoadBalancerForwardingRulePut object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationLoadBalancerForwardingRulePut":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"properties":{"$ref":"#/components/schemas/ApplicationLoadBalancerForwardingRuleProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"ApplicationLoadBalancerForwardingRuleProperties":{"required":["listenerIp","listenerPort","name","protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the Application Load Balancer forwarding rule."},"protocol":{"type":"string","description":"The balancing protocol.","enum":["HTTP"]},"listenerIp":{"type":"string","description":"The listening (inbound) IP."},"listenerPort":{"type":"integer","description":"The listening (inbound) port number; the valid range is 1 to 65535.","format":"int32"},"clientTimeout":{"type":"integer","description":"The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds).","format":"int32"},"serverCertificates":{"type":"array","description":"Array of items in the collection.","items":{"type":"string","format":"uuid"}},"httpRules":{"type":"array","description":"An array of items in the collection. The original order of rules is preserved during processing, except that rules of the 'FORWARD' type are processed after the rules with other defined actions. The relative order of the 'FORWARD' type rules is also preserved during the processing.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRule"}}}},"ApplicationLoadBalancerHttpRule":{"required":["name","type"],"type":"object","properties":{"name":{"type":"string","description":"The unique name of the Application Load Balancer HTTP rule."},"type":{"type":"string","description":"The HTTP rule type.","enum":["FORWARD","STATIC","REDIRECT"]},"targetGroup":{"type":"string","description":"The ID of the target group; this parameter is mandatory and is valid only for 'FORWARD' actions."},"dropQuery":{"type":"boolean","description":"Indicates whether the query part of the URI should be dropped and is valid only for 'REDIRECT' actions. Default value is 'FALSE', the redirect URI does not contain any query parameters."},"location":{"type":"string","description":"The location for the redirection; this parameter is mandatory and valid only for 'REDIRECT' actions."},"statusCode":{"type":"integer","description":"The status code is for 'REDIRECT' and 'STATIC' actions only. \n\nIf the HTTP rule is 'REDIRECT' the valid values are: 301, 302, 303, 307, 308; default value is '301'.\n\nIf the HTTP rule is 'STATIC' the valid values are from the range 200-599; default value is '503'.","format":"int32"},"responseMessage":{"type":"string","description":"The response message of the request; this parameter is mandatory for 'STATIC' actions."},"contentType":{"type":"string","description":"Specifies the content type and is valid only for 'STATIC' actions."},"conditions":{"type":"array","description":"An array of items in the collection. The action will be executed only if each condition is met; the rule will always be applied if no conditions are set.","items":{"$ref":"#/components/schemas/ApplicationLoadBalancerHttpRuleCondition"}}}},"ApplicationLoadBalancerHttpRuleCondition":{"required":["condition","type"],"type":"object","properties":{"type":{"type":"string","description":"The HTTP rule condition type.","enum":["HEADER","PATH","QUERY","METHOD","HOST","COOKIE","SOURCE_IP"]},"condition":{"type":"string","description":"The matching rule for the HTTP rule condition attribute; this parameter is mandatory for 'HEADER', 'PATH', 'QUERY', 'METHOD', 'HOST', and 'COOKIE' types. It must be 'null' if the type is 'SOURCE_IP'.","enum":["EXISTS","CONTAINS","EQUALS","MATCHES","STARTS_WITH","ENDS_WITH"]},"negate":{"type":"boolean","description":"Specifies whether the condition should be negated; the default value is 'FALSE'."},"key":{"type":"string","description":"The key can only be set when the HTTP rule condition type is 'COOKIES', 'HEADER', or 'QUERY'. For the type 'PATH', 'METHOD', 'HOST', or 'SOURCE_IP' the value must be 'null'."},"value":{"type":"string","description":"This parameter is mandatory for the conditions 'CONTAINS', 'EQUALS', 'MATCHES', 'STARTS_WITH', 'ENDS_WITH', or if the type is 'SOURCE_IP'. Specify a valid CIDR. If the condition is 'EXISTS', the value must be 'null'."}}}}}}
```

## The Template object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Template":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/TemplateProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"TemplateProperties":{"required":["cores","name","ram","storageSize","category"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"cores":{"type":"number","description":"The CPU cores count."},"ram":{"type":"number","description":"The RAM size in MB."},"storageSize":{"type":"number","description":"The storage size in GB."},"storageType":{"type":"string","readOnly":true,"description":"The performance class type for the storage. The only possible value is 'SSD Premium'"},"category":{"type":"string","description":"The description of the template."},"gpus":{"type":"array","description":"List of GPUs assigned to the template","items":{"$ref":"#/components/schemas/GpuTemplate"}}}},"GpuTemplate":{"type":"object","properties":{"vendor":{"type":"string","description":"The name of the vendor"},"model":{"type":"string","description":"The name of the GPU card model"},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved)."},"count":{"type":"integer","description":"The number of GPUs to be provisioned"}}}}}}
```

## The TemplateProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"TemplateProperties":{"required":["cores","name","ram","storageSize","category"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"cores":{"type":"number","description":"The CPU cores count."},"ram":{"type":"number","description":"The RAM size in MB."},"storageSize":{"type":"number","description":"The storage size in GB."},"storageType":{"type":"string","readOnly":true,"description":"The performance class type for the storage. The only possible value is 'SSD Premium'"},"category":{"type":"string","description":"The description of the template."},"gpus":{"type":"array","description":"List of GPUs assigned to the template","items":{"$ref":"#/components/schemas/GpuTemplate"}}}},"GpuTemplate":{"type":"object","properties":{"vendor":{"type":"string","description":"The name of the vendor"},"model":{"type":"string","description":"The name of the GPU card model"},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved)."},"count":{"type":"integer","description":"The number of GPUs to be provisioned"}}}}}}
```

## The ExposeSerial object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false}}}}
```

## The RequireLegacyBios object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true}}}}
```

## The Error object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Error":{"type":"object","properties":{"httpStatus":{"type":"integer","description":"HTTP status code of the operation.","format":"int32","readOnly":true},"messages":{"type":"array","items":{"$ref":"#/components/schemas/ErrorMessage"}}}},"ErrorMessage":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code.","readOnly":true},"message":{"type":"string","description":"A human-readable message.","readOnly":true}}}}}}
```

## The ErrorMessage object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ErrorMessage":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code.","readOnly":true},"message":{"type":"string","description":"A human-readable message.","readOnly":true}}}}}}
```

## The Type object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]}}}}
```

## The PaginationOffsetMandatory object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PaginationOffsetMandatory":{"type":"number","description":"The offset, specified in the request (if not is specified, 0 is used by default)."}}}}
```

## The PaginationLimitMandatory object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PaginationLimitMandatory":{"type":"number","description":"The limit, specified in the request (if not specified, the endpoint's default pagination limit is used)."}}}}
```

## The PaginationOffsetOptional object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."}}}}
```

## The PaginationLimitOptional object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."}}}}
```

## The PaginationLinks object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The SecurityGroups object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The SecurityGroup object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The SecurityGroupRequest object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"SecurityGroupRequest":{"required":["properties"],"type":"object","properties":{"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntitiesRequest"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"SecurityGroupEntitiesRequest":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The SecurityGroupProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}}}}}
```

## The SecurityGroupEntities object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"SecurityGroupEntities":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"},"nics":{"$ref":"#/components/schemas/Nics"},"servers":{"$ref":"#/components/schemas/Servers"}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}},"Nics":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Nic"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Nic":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/NicProperties"},"entities":{"$ref":"#/components/schemas/NicEntities"}}},"NicProperties":{"required":["lan"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"mac":{"type":"string","description":"The MAC address of the NIC."},"ips":{"type":"array","description":"Collection of IP addresses, assigned to the NIC. Explicitly assigned public IPs need to come from reserved IP blocks. Passing value null or empty array will assign an IP address automatically.","nullable":true,"items":{"type":"string"}},"dhcp":{"type":"boolean","description":"Indicates if the NIC will reserve an IP using DHCP.","default":true},"ipv6Ips":{"type":"array","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the IPv6 IP addresses of the NIC. The maximum number of IPv6 IP addresses per NIC is 50, if you need more, contact support. If you leave this property 'null' when adding a NIC, when changing the NIC's IPv6 CIDR block, when changing the LAN's IPv6 CIDR block or when moving the NIC to a different IPv6 enabled LAN, then we will automatically assign the same number of IPv6 addresses which you had before from the NICs new CIDR block. If you leave this property 'null' while not changing the CIDR block, the IPv6 IP addresses won't be changed either. You can also provide your own self choosen IPv6 addresses, which then must be inside the IPv6 CIDR block of this NIC.","nullable":true,"items":{"type":"string"}},"ipv6CidrBlock":{"type":"string","description":"If this NIC is connected to an IPv6 enabled LAN then this property contains the /80 IPv6 CIDR block of the NIC. If you leave this property 'null' when adding a NIC to an IPv6-enabled LAN, then an IPv6 CIDR block will automatically be assigned to the NIC, but you can also specify an /80 IPv6 CIDR block for the NIC on your own, which must be inside the /64 IPv6 CIDR block of the LAN and unique. This value can only be set, if the LAN already has an IPv6 CIDR block assigned. An IPv6-enabled LAN is limited to a maximum of 65,536 NICs.","nullable":true},"dhcpv6":{"type":"boolean","description":"Indicates if the NIC will receive an IPv6 using DHCP. It can be set to 'true' or 'false' only if this NIC is connected to an IPv6 enabled LAN.","nullable":true,"default":true},"lan":{"type":"integer","description":"The LAN ID the NIC will be on. If the LAN ID does not exist, it will be implicitly created.","format":"int32"},"firewallActive":{"type":"boolean","description":"Activate or deactivate the firewall. By default, an active firewall without any defined rules will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports."},"firewallType":{"type":"string","description":"The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"deviceNumber":{"type":"integer","description":"The Logical Unit Number (LUN) of the storage volume. Null if this NIC was created using Cloud API and no DCD changes were performed on the Datacenter.","format":"int32","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number for the NIC.","format":"int32","readOnly":true},"vnet":{"type":"string","description":"The vnet ID that belongs to this NIC; Requires system privileges, for internal usage only"}}},"NicEntities":{"type":"object","properties":{"flowlogs":{"$ref":"#/components/schemas/FlowLogs"},"firewallrules":{"$ref":"#/components/schemas/FirewallRules"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"}}},"FlowLogs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FlowLog"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"FlowLog":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FlowLogProperties"}}},"FlowLogProperties":{"required":["action","bucket","direction","name"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"action":{"type":"string","description":"Specifies the traffic action pattern.","enum":["ACCEPTED","REJECTED","ALL"]},"direction":{"type":"string","description":"Specifies the traffic direction pattern.","enum":["INGRESS","EGRESS","BIDIRECTIONAL"]},"bucket":{"type":"string","description":"The bucket name of an existing IONOS Cloud Object storage bucket."}}},"SecurityGroups":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/SecurityGroup"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"SecurityGroup":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/SecurityGroupProperties"},"entities":{"$ref":"#/components/schemas/SecurityGroupEntities"}}},"SecurityGroupProperties":{"required":["name"],"type":"object","properties":{"name":{"type":"string","maxLength":60,"description":"The name of the security group."},"description":{"type":"string","maxLength":300,"description":"The description of the security group."}}},"Servers":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/Server"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Server":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ServerProperties"},"entities":{"$ref":"#/components/schemas/ServerEntities"}}},"ServerProperties":{"type":"object","properties":{"templateUuid":{"type":"string","description":"The ID of the template for creating CUBE or GPU servers. If a template has GPU cards assigned, then it can only be used to create GPU servers, otherwise it can only be used for CUBE servers. The available templates can be found on the templates resource."},"name":{"type":"string","description":"The name of the  resource."},"hostname":{"type":"string","description":"The hostname of the  resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters."},"cores":{"type":"integer","description":"The total number of cores for the server. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"ram":{"type":"integer","description":"The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB; however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB, then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB. It can not be supplied for the VMs that have to be created based on templates.","format":"int32"},"availabilityZone":{"type":"string","description":"The availability zone in which the server should be provisioned. For CUBE and GPU servers, the only value accepted is 'AUTO'.","enum":["AUTO","ZONE_1","ZONE_2"]},"vmState":{"type":"string","description":"Status of the virtual machine.","readOnly":true,"enum":["NOSTATE","RUNNING","BLOCKED","PAUSED","SHUTDOWN","SHUTOFF","CRASHED","SUSPENDED"]},"bootCdrom":{"$ref":"#/components/schemas/ResourceReference"},"bootVolume":{"$ref":"#/components/schemas/ResourceReference"},"cpuFamily":{"type":"string","description":"CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions; available CPU architectures can be retrieved from the datacenter resource; must not be provided for CUBE and VCPU servers. If the field is omitted from the request or the value is empty or null, an available CPU architecture will be automatically selected."},"type":{"type":"string","description":"Server type: CUBE, ENTERPRISE, VCPU or GPU."},"placementGroupId":{"type":"string","description":"The placement group ID that belongs to this server; Requires system privileges, for internal usage only"},"nicMultiQueue":{"type":"boolean","description":"Activate or deactivate the Multi Queue feature on all NICs of this server. This feature is beneficial to  enable when the NICs are experiencing performance issues (e.g. low throughput). Toggling this feature will also initiate a restart of the server. If the specified value is `true`, the feature will  be activated; if it is not specified or set to `false`, the feature will be deactivated. It is not allowed for servers of type Cube."},"maxNetworkBandwidth":{"type":"number","description":"The maximum bandwidth in Gbps as specified by NQoS tiers","readOnly":true,"format":"float"}}},"ResourceReference":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier."},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true}}},"ServerEntities":{"type":"object","properties":{"cdroms":{"$ref":"#/components/schemas/Cdroms"},"volumes":{"$ref":"#/components/schemas/AttachedVolumes"},"nics":{"$ref":"#/components/schemas/Nics"},"securitygroups":{"$ref":"#/components/schemas/SecurityGroups"},"gpus":{"$ref":"#/components/schemas/GPUs"}}},"Cdroms":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Image"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Image":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/ImageProperties"}}},"ImageProperties":{"required":["licenceType"],"type":"object","properties":{"name":{"type":"string","description":"The resource name."},"description":{"type":"string","description":"Human-readable description."},"location":{"type":"string","description":"The location of this image/snapshot.","readOnly":true},"size":{"type":"number","description":"The image size in GB.","readOnly":true},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"cpuHotUnplug":{"type":"boolean","description":"Hot-unplug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"ramHotUnplug":{"type":"boolean","description":"Hot-unplug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"discScsiHotPlug":{"type":"boolean","description":"Hot-plug capable SCSI drive (no reboot required)."},"discScsiHotUnplug":{"type":"boolean","description":"Hot-unplug capable SCSI drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"licenceType":{"type":"string","description":"The OS type of this image."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"imageType":{"type":"string","description":"The image type.","readOnly":true,"enum":["HDD","CDROM","UNKNOWN"]},"public":{"type":"boolean","description":"Indicates whether the image is part of a public repository.","readOnly":true},"imageAliases":{"type":"array","description":"List of image aliases mapped for this image","readOnly":true,"items":{"type":"string"}},"requiredFeatures":{"type":"array","description":"List of features required by this image.","readOnly":true,"items":{"type":"string"}},"cloudInit":{"type":"string","description":"Cloud init compatibility.","enum":["NONE","V1"]}}},"ExposeSerial":{"type":"boolean","description":"If set to `true` will expose the serial id of the disk attached to the server. If set to `false` will not expose the serial id. Some operating systems or software solutions require the serial id to be exposed to work properly. Exposing the serial  can influence licensed software (e.g. Windows) behavior","default":false},"RequireLegacyBios":{"type":"boolean","description":"Indicates if the image requires the legacy BIOS for compatibility or specific needs.","default":true},"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."},"AttachedVolumes":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/Volume"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Volume":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/VolumeProperties"}}},"VolumeProperties":{"required":["size"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"type":{"type":"string","description":"Hardware type of the volume. DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.","enum":["HDD","SSD","SSD Standard","SSD Premium","DAS","ISO"]},"size":{"type":"number","description":"The size of the volume in GB."},"availabilityZone":{"type":"string","description":"The availability zone in which the volume should be provisioned. The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront. This is uavailable for DAS (Direct Attached Storage), and subject to availability for SSD.","enum":["AUTO","ZONE_1","ZONE_2","ZONE_3"]},"image":{"type":"string","description":"Image or snapshot ID to be used as template for this volume. MSSQL Enterprise Images can be used only if the feature toggle for MSSQL Enterprise is enabled on the contract."},"imagePassword":{"type":"string","description":"Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests. Password rules allows all characters from a-z, A-Z, 0-9."},"sshKeys":{"type":"array","description":"Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key. This field may only be set in creation requests. When reading, it always returns null. SSH keys are only supported if a public Linux image is used for the volume creation.","items":{"type":"string"}},"bus":{"type":"string","description":"The bus type for this volume; default is VIRTIO.","enum":["VIRTIO","IDE","UNKNOWN"]},"licenceType":{"type":"string","description":"OS type for this volume."},"applicationType":{"$ref":"#/components/schemas/ApplicationType"},"cpuHotPlug":{"type":"boolean","description":"Hot-plug capable CPU (no reboot required)."},"ramHotPlug":{"type":"boolean","description":"Hot-plug capable RAM (no reboot required)."},"nicHotPlug":{"type":"boolean","description":"Hot-plug capable NIC (no reboot required)."},"nicHotUnplug":{"type":"boolean","description":"Hot-unplug capable NIC (no reboot required)."},"discVirtioHotPlug":{"type":"boolean","description":"Hot-plug capable Virt-IO drive (no reboot required)."},"discVirtioHotUnplug":{"type":"boolean","description":"Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs."},"exposeSerial":{"$ref":"#/components/schemas/ExposeSerial"},"requireLegacyBios":{"$ref":"#/components/schemas/RequireLegacyBios"},"deviceNumber":{"type":"integer","description":"The Logical Unit Number of the storage volume. Null for volumes, not mounted to a VM.","format":"int64","readOnly":true},"pciSlot":{"type":"integer","description":"The PCI slot number of the storage volume. Null for volumes, not mounted to a VM.","format":"int32","readOnly":true},"backupunitId":{"type":"string","format":"uuid","description":"The ID of the backup unit that the user has access to. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property."},"userData":{"type":"string","description":"The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on creation of a new a volume. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property."},"bootServer":{"type":"string","description":"The UUID of the attached server.","readOnly":true},"bootOrder":{"type":"string","description":"Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.","nullable":true,"default":"AUTO","enum":["AUTO","NONE","PRIMARY"]}}},"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The SecurityGroupEntitiesRequest object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"SecurityGroupEntitiesRequest":{"type":"object","properties":{"rules":{"$ref":"#/components/schemas/FirewallRules"}}},"FirewallRules":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","readOnly":true,"items":{"$ref":"#/components/schemas/FirewallRule"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"FirewallRule":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/FirewallruleProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"FirewallruleProperties":{"required":["protocol"],"type":"object","properties":{"name":{"type":"string","description":"The name of the  resource."},"protocol":{"type":"string","description":"The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).","enum":["TCP","UDP","ICMP","ICMPv6","GRE","VRRP","ESP","AH","ANY"]},"sourceMac":{"type":"string","description":"Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.","nullable":true},"ipVersion":{"type":"string","description":"The IP version for this rule. If sourceIp or targetIp are specified, you can omit this value - the IP version will then be deduced from the IP address(es) used; if you specify it anyway, it must match the specified IP address(es). If neither sourceIp nor targetIp are specified, this rule allows traffic only for the specified IP version. If neither sourceIp, targetIp nor ipVersion are specified, this rule will only allow IPv4 traffic.","nullable":true,"enum":["IPv4","IPv6"]},"sourceIp":{"type":"string","description":"Only traffic originating from the respective IP address (or CIDR block) is allowed. Value null allows traffic from any IP address (according to the selected ipVersion).","nullable":true},"targetIp":{"type":"string","description":"If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address (or CIDR block) of the NIC is allowed. Value null allows traffic to any target IP address (according to the selected ipVersion).","nullable":true},"icmpCode":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed code (from 0 to 254) if protocol ICMP or ICMPv6 is chosen. Value null allows all codes.","format":"int32","nullable":true},"icmpType":{"maximum":254,"minimum":0,"type":"integer","description":"Defines the allowed type (from 0 to 254) if the protocol ICMP or ICMPv6 is chosen. Value null allows all types.","format":"int32","nullable":true},"portRangeStart":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the start range of the allowed port (from 1 to 65535) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports.","format":"int32"},"portRangeEnd":{"maximum":65535,"minimum":1,"type":"integer","description":"Defines the end range of the allowed port (from 1 to 65535) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.","format":"int32"},"type":{"type":"string","description":"The type of the firewall rule. If not specified, the default INGRESS value is used.","enum":["INGRESS","EGRESS"]}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The ApplicationType object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"ApplicationType":{"type":"string","description":"The type of application that is hosted on this resource.  Only public images can have an Application type different than UNKNOWN."}}}}
```

## The GpuTemplate object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GpuTemplate":{"type":"object","properties":{"vendor":{"type":"string","description":"The name of the vendor"},"model":{"type":"string","description":"The name of the GPU card model"},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved)."},"count":{"type":"integer","description":"The number of GPUs to be provisioned"}}}}}}
```

## The GPUs object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GPUs":{"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"items":{"type":"array","description":"Array of items in the collection.","items":{"$ref":"#/components/schemas/GPU"}},"offset":{"$ref":"#/components/schemas/PaginationOffsetOptional"},"limit":{"$ref":"#/components/schemas/PaginationLimitOptional"},"_links":{"$ref":"#/components/schemas/PaginationLinks"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}},"PaginationOffsetOptional":{"type":"number","description":"The offset (if specified in the request)."},"PaginationLimitOptional":{"type":"number","description":"The limit (if specified in the request)."},"PaginationLinks":{"type":"object","properties":{"prev":{"type":"string","description":"URL (with offset and limit parameters) of the previous page; only present if offset is greater than 0.","format":"uri","readOnly":true},"self":{"type":"string","description":"URL (with offset and limit parameters) of the current page.","format":"uri","readOnly":true},"next":{"type":"string","description":"URL (with offset and limit parameters) of the next page; only present if offset + limit is less than the total number of elements.","format":"uri","readOnly":true}}}}}}
```

## The GPU object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GPU":{"required":["properties"],"type":"object","properties":{"id":{"type":"string","description":"The resource's unique identifier.","readOnly":true},"type":{"type":"string","description":"The type of object that has been created.","allOf":[{"$ref":"#/components/schemas/Type"}]},"href":{"type":"string","description":"The URL to the object representation (absolute path).","format":"uri","readOnly":true},"metadata":{"$ref":"#/components/schemas/DatacenterElementMetadata"},"properties":{"$ref":"#/components/schemas/GPUProperties"}}},"Type":{"type":"string","enum":["datacenter","server","volume","nic","loadbalancer","location","firewall-rule","flow-log","image","snapshot","lan","ipblock","pcc","contract","user","group","collection","resource","request","request-status","s3key","backupunit","label","k8s","nodepool","template","networkloadbalancer","forwarding-rule","natgateway","natgateway-rule","node","applicationloadbalancer","target-group","security-group","gpu"]},"DatacenterElementMetadata":{"type":"object","properties":{"etag":{"type":"string","description":"Resource's Entity Tag as defined in http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11  Entity Tag is also added as an 'ETag response header to requests which don't use 'depth' parameter.","readOnly":true},"createdDate":{"type":"string","description":"The last time the resource was created.","format":"date-time","readOnly":true},"createdBy":{"type":"string","description":"The user who created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"The unique ID of the user who created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","description":"The last time the resource was modified.","format":"date-time","readOnly":true},"lastModifiedBy":{"type":"string","description":"The user who last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"The unique ID of the user who last modified the resource.","readOnly":true},"state":{"type":"string","description":"State of the resource. *AVAILABLE* There are no pending modification requests for this item; *BUSY* There is at least one modification request pending and all following requests will be queued; *INACTIVE* Resource has been de-provisioned; *DEPLOYING* Resource state DEPLOYING - relevant for Kubernetes cluster/nodepool; *ACTIVE* Resource state ACTIVE - relevant for Kubernetes cluster/nodepool; *FAILED* Resource state FAILED - relevant for Kubernetes cluster/nodepool; *SUSPENDED* Resource state SUSPENDED - relevant for Kubernetes cluster/nodepool; *FAILED_SUSPENDED* Resource state FAILED_SUSPENDED - relevant for Kubernetes cluster; *UPDATING* Resource state UPDATING - relevant for Kubernetes cluster/nodepool; *FAILED_UPDATING* Resource state FAILED_UPDATING - relevant for Kubernetes cluster/nodepool; *DESTROYING* Resource state DESTROYING - relevant for Kubernetes cluster; *FAILED_DESTROYING* Resource state FAILED_DESTROYING - relevant for Kubernetes cluster/nodepool; *TERMINATED* Resource state TERMINATED - relevant for Kubernetes cluster/nodepool; *HIBERNATING* Resource state HIBERNATING - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool; *MAINTENANCE* Resource state MAINTENANCE - relevant for Kubernetes cluster/nodepool; *FAILED_HIBERNATING* Resource state FAILED_HIBERNATING - relevant for Kubernetes cluster/nodepool.","readOnly":true,"enum":["AVAILABLE","INACTIVE","BUSY","DEPLOYING","ACTIVE","FAILED","SUSPENDED","FAILED_SUSPENDED","UPDATING","FAILED_UPDATING","DESTROYING","FAILED_DESTROYING","TERMINATED","HIBERNATING","FAILED_HIBERNATING","MAINTENANCE","FAILED_MAINTENANCE","UNKNOWN"]}}},"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```

## The GPUProperties object

```json
{"openapi":"3.0.3","info":{"title":"CLOUD API","version":"6.0"},"components":{"schemas":{"GPUProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"The name of the resource.","readOnly":true},"vendor":{"type":"string","description":"The vendor of the Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"model":{"type":"string","description":"The model of Graphics Processing Unit (GPU) card. The available options can be retrieved from the 'gpuArchitecture' field returned in the GET responses of the resources /datacenters and /locations.","readOnly":true},"type":{"type":"string","description":"The way the Graphics Processing Unit (GPU) card will function. The 'passthrough' type means that the Server will be connected to the GPU directly (e.g. no virtualization involved).","readOnly":true}}}}}}
```
