Zudoku
Unikraft Cloud Platform API

Schemas


AttachVolumeByUUIDRequestBody

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for readonly:
  • readonlyboolean

    Whether the volume should be mounted read-only.

    Example: false

AttachVolumesRequest

  • attach_toobject · required

    UUID or name of the instance to attach the volume to.

  • atstring · regex · pattern: ^/(?!.*\.\./|.*\.$|.… · required

    Path of the mountpoint.

    The path must be absolute, not contain . and .. components, and not contain colons (:). The path must point to an empty directory. If the directory does not exist, it is created.

    Example: /mnt/my-volume
  • uuidstring · uuid

    The UUID of the volume to attach. Mutually exclusive with name. Exactly one of uuid or name must be provided.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the volume to attach. Mutually exclusive with UUID. Exactly one of uuid or name must be provided.

    Example: funky-vol-g7gum5cj
  • readonlyboolean

    Whether the volume should be mounted read-only.

    Example: false

AttachVolumesRequestInstanceID

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for name:
  • namestring

    The name of the instance that the volume is attached to.

    Example: funky-town-g7gum5cj

AttachVolumesResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

AttachVolumesResponseAttachedVolume

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the volume that was attached.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the volume that was attached.

    Example: funky-vol-g7gum5cj
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No volume with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

AttachVolumesResponseData

  • volumesobject[]

    The volume(s) which were attached by the request.

AutoscalePolicy

  • namestring

    The name of the policy.

    Example: funky-policy
  • enabledboolean

    If the policy is enabled.

    Example: true
  • metricstring · enum · enum

    Metric to use for the step policy.

    Enum values:
    cpu
  • adjustment_typestring · enum · enum

    The type of adjustment to be made in the step policy.

    Enum values:
    change
    exact
    percentage
  • stepsobject[]

    The steps for the step policy. Each step defines an adjustment value and optional bounds.

AutoscalePolicyStep

  • adjustmentinteger · int64

    The adjustment value for the step.

    Example: 50
  • lower_boundinteger · int64

    Lower bound for the step.

    Example: 10
  • upper_boundinteger · int64

    Upper bound for the step.

    Example: 500

BodyInstanceID

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for name:
  • namestring

    The name of the instance that the volume is detached from.

    Example: funky-town-g7gum5cj

Certificate

  • uuidstring · uuid

    The UUID of the certificate.

    This is a unique identifier for the certificate that is generated when the certificate is created. The UUID is used to reference the certificate in API calls and can be used to identify the certificate in all API calls that require an identifier.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the certificate.

    This is a human-readable name that can be used to identify the certificate. The name must be unique within the context of your account. The name can also be used to identify the certificate in API calls.

    Example: funky-certificate
  • created_atstring · date-time

    The time the certificate was created.

    Example: 2023-10-01T12:00:00Z
  • common_namestring

    The common name (CN) field from the certificate's subject.

    This is typically the primary domain name that the certificate is issued for. It represents the main identity that the certificate validates.

    Example: my-common-name
  • subjectstring

    The complete subject distinguished name (DN) of the certificate.

    This contains the full subject information from the certificate, including the common name, organization, organizational unit, locality, state, and country. The subject identifies the entity that the certificate is issued to.

    Example: example.com
  • issuerstring

    The complete issuer distinguished name (DN) of the certificate.

    This identifies the Certificate Authority (CA) that issued the certificate. It contains information about the CA including its common name, organization, and country.

    Example: CN=R10,O=Let's Encrypt,C=US
  • serial_numberstring

    The unique serial number assigned to the certificate by the issuing CA.

    This is a unique identifier within the scope of the issuing CA that can be used to identify and track the certificate. Serial numbers are typically represented as hexadecimal strings.

    Example: 123456789ABCDEF123456789ABCDEF123456
  • not_beforestring · date-time

    The date and time when the certificate becomes valid.

    The certificate should not be trusted before this date. This timestamp marks the beginning of the certificate's validity period.

    Example: 2023-10-01T12:00:00Z
  • not_afterstring · date-time

    The date and time when the certificate expires.

    The certificate should not be trusted after this date. This timestamp marks the end of the certificate's validity period. Certificates should be renewed before this date to maintain service availability.

    Example: 2023-10-01T12:00:00Z
  • statestring · enum · enum

    The current state of the certificate.

    This indicates whether the certificate is pending issuance, valid and ready for use, or in an error state. See CertificateState enum for detailed state descriptions.

    Enum values:
    pending
    valid
    error
  • statusstring · enum · enum

    An optional field representing the status of the request. This field is only set when this message object is used as a response message.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: No certificate with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: 8

ConfigurationInstanceCreateArgs

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
type = object
Properties for roms:
  • romsobject

    The ROM to use for the autoscale configuration.

CreateAutoscaleConfigurationByServiceGroupUUIDRequest

  • uuidstring · uuid

    The UUID of the service to create a configuration for. Mutually exclusive with name.

  • min_sizeinteger · int64

    The minimum number of instances to keep running.

  • max_sizeinteger · int64

    The maximum number of instances to keep running.

  • warmup_time_msinteger · int64

    The warmup time in milliseconds for new instances.

  • cooldown_time_msinteger · int64

    The cooldown time in milliseconds for the autoscale configuration.

  • create_argsobject

    The arguments to use when creating the autoscale configuration.

  • policiesobject[]

    The policies to apply to the autoscale configuration.

CreateAutoscaleConfigurationByServiceGroupUUIDRequestInstanceCreateArgs

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
type = object
Properties for roms:
  • romsobject

    The ROM to use for the autoscale configuration.

CreateAutoscaleConfigurationPolicyRequest

  • namestring · required

    The Name of the service to add a policy to.

    Example: funky-service
  • typeobject · required

    The policy type to add to the autoscale configuration.

CreateAutoscaleConfigurationPolicyResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

CreateAutoscaleConfigurationPolicyResponseData

  • policiesobject[]

    The policies which were added by the request.

CreateAutoscaleConfigurationPolicyResponsePolicy

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the service of the added policy.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service of the added policy.

    Example: funky-policy
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

CreateAutoscaleConfigurationsRequestConfiguration

  • uuidstring · uuid

    The UUID of the service to create a configuration for. Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service to create a configuration for. Mutually exclusive with UUID.

    Example: funky-service
  • min_sizeinteger · int64

    The minimum number of instances to keep running.

    Example: 2
  • max_sizeinteger · int64

    The maximum number of instances to keep running.

    Example: 12
  • warmup_time_msinteger · int64

    The warmup time in milliseconds for new instances.

    Example: 100
  • cooldown_time_msinteger · int64

    The cooldown time in milliseconds for the autoscale configuration.

    Example: 100
  • create_argsobject

    The arguments to use when creating the autoscale configuration.

  • policiesobject[]

    The policies to apply to the autoscale configuration.

CreateAutoscaleConfigurationsResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

CreateAutoscaleConfigurationsResponseConfigurationsResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the service where the configuration was created.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service where the configuration was created.

    Example: funky-instance-template
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

CreateAutoscaleConfigurationsResponseData

  • service_groupsobject[]

    The configuration(s) which were created by the request.

CreateCertificateRequest

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for name:
  • namestring

    The name of the certificate.

    This is a human-readable name that can be used to identify the certificate. The name must be unique within the context of your account. If no name is specified, a random name is generated for you. The name can also be used to identify the certificate in API calls.

    Example: funky-certificate

CreateCertificateResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 32

CreateCertificateResponseData

  • certificatesobject[]

    The certificate which was created by this request.

    Note: only one certificate can be specified in the request, so this will always contain a single entry.

CreateInstanceRequest

  • imagestring · required

    The image to use for the instance.

    Example: nginx:latest
  • namestring

    (Optional). The name of the instance.

    If not provided, a random name will be generated. The name must be unique.

    Example: funky-town-g756b5d
  • argsstring[]

    (Optional). The arguments to pass to the instance when it starts.

    Example: --port=8080 --debug
  • envobject

    (Optional). Environment variables to set for the instance.

    Example: {"ENV_VAR1":"value1","ENV_VAR2":"value2"}
  • memory_mbinteger · int64

    (Optional). Memory in MB to allocate for the instance. Default is 128.

    Example: 256
  • service_groupobject

    (Optional). The service group configuration when creating an instance.

    When creating an instance, either a previously created (persistent) service group can be referenced (either through its name or UUID), or a new (ephemeral) service group can be created for the instance by specifying the list of services it should expose and optionally the domains it should use.

  • volumesobject[]

    Volumes to attach to the instance.

    This list can contain both existing and new volumes to create as part of the instance creation. Existing volumes can be referenced by their name or UUID. New volumes can be created by specifying a name, size in MiB, and mount point in the instance. The mount point is the directory in the instance where the volume will be mounted.

  • autostartboolean

    Whether the instance should start automatically on creation.

    Example: true
  • replicasinteger · int64

    Number of replicas for the instance.

    Example: 5
  • restart_policystring · enum · enum

    Restart policy for the instance. This defines how the instance should behave when it stops or crashes.

    Enum values:
    never
    always
    on_failure
  • scale_to_zeroobject

    Scale-to-zero configuration for the instance.

  • vcpusinteger · int32

    Number of vCPUs to allocate for the instance.

    Example: 1
  • wait_timeout_msinteger · int64

    Timeout to wait for all new instances to reach running state in milliseconds. If you autostart your new instance, you can wait for it to finish starting with a blocking API call if you specify a wait timeout greater than zero. No wait performed for a value of 0.

    Example: 2000
  • featuresstring[]

    Features to enable for the instance. Features are specific configurations or capabilities that can be enabled for the instance.

    Enum values:
    delete_on_stop

CreateInstanceRequestDomain

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for certificate:
  • certificateobject

    A reference to an existing certificate which can be used for the specified domain. If unspecified, Unikraft Cloud will automatically generate a new certificate for the domain based on Let's Encrypt and seek to accomplish a DNS-01 challenge.

CreateInstanceRequestServiceGroup

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object · requires: uuid
type = object · requires: name
Properties for uuid:
  • uuidstring · uuid · required

    (Optional). Reference an existing (persistent) service group by its UUID. Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000

CreateInstanceRequestVolume

  • atstring · required

    The mount point for the volume in the instance.

    Example: /mnt/funky-volume
  • uuidstring · uuid

    The UUID of an existing volume.

    If this is the only specified field, then it will look up an existing volume by this UUID.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the volume.

    If this is the only specified field, then it will look up an existing volume by this name. If the volume does not exist, the request will fail. If a new volume is intended to be created, then this field must be specified along with the size in MiB and the mount point in the instance.

    Example: funky-volume-g756b5d
  • size_mbinteger · int64

    The size of the volume when creating a new volume.

    When creating a new volume as part of the instance create request, specify the size of the volume in MiB.

    Example: 32
  • read_onlyboolean

    Whether the volume is read-only.

    If this field is set to true, the volume will be mounted as read-only in the instance. This field is optional and defaults to false and is only applicable when using an existing volume.

    Example: 256

CreateInstanceResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 875

CreateInstanceResponseData

  • instancesobject[]

    The instance that was created in this request.

CreateServiceGroupRequest

  • namestring

    Name of the service group. This is a human-readable name that can be used to identify the service group. The name must be unique within the context of your account. If no name is specified, a random name is generated for you. The name can also be used to identify the service group in API calls.

    Example: funky-service-g7gum5cj
  • servicesobject[]

    Description of exposed services.

  • domainsobject[]

    Description of domains associated with the service group.

  • soft_limitinteger · uint64

    The soft limit is used by the Unikraft Cloud load balancer to decide when to wake up another standby instance.

    For example, if the soft limit is set to 5 and the service consists of 2 standby instances, one of the instances receives up to 5 concurrent requests. The 6th parallel requests wakes up the second instance. If there are no more standby instances to wake up, the number of requests assigned to each instance will exceed the soft limit. The load balancer makes sure that when the number of in-flight requests goes down again, instances are put into standby as fast as possible.

    Example: 1
  • hard_limitinteger · uint64

    The hard limit defines the maximum number of concurrent requests that an instance assigned to the this service can handle.

    The load balancer will never assign more requests to a single instance. In case there are no other instances available, excess requests fail (i.e., they are blocked and not queued).

    Example: 100

CreateServiceGroupRequestDomain

  • namestring · required

    Publicly accessible domain name. If this name ends in a period . it must be a valid Full Qualified Domain Name (FQDN), otherwise it will become a subdomain of the target metro.

    Example: example.com.
  • certificateobject

    Use an existing certificate for the domain. If this field is specified, the domain must be associated with a valid certificate.

CreateServiceGroupResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 46

CreateServiceGroupResponseData

  • service_groupsobject[]

    The service group which was created by this request.

    Note: only one service group can be specified in the request, so this will always contain a single entry.

CreateVolumeRequest

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for name:
  • namestring

    The name of the volume.

    This is a human-readable name that can be used to identify the volume. The name must be unique within the context of your account. If no name is specified, a random name of the form vol-X is generated for you, where X is a 5 character long random alphanumeric suffix.. The name can also be used to identify the volume in API calls.

    Example: funky-vol-t7qumh5j

CreateVolumeResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

CreateVolumeResponseData

  • volumesobject[]

    The volume(s) which were created by the request.

CreateVolumeResponseVolume

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    UUID of the newly created volume.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the newly created volume.

    Example: funky-vol-g7gum5cj
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No volume with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

DeleteAutoscaleConfigurationPolicyResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

DeleteAutoscaleConfigurationPolicyResponseData

  • policiesobject[]

    The policies which were deleted by the request.

DeleteAutoscaleConfigurationPolicyResponsePoliciesResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • namestring

    The name of the service of the deleted policy.

    Example: funky-policy
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

DeleteAutoscaleConfigurationsResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

DeleteAutoscaleConfigurationsResponseData

  • service_groupsobject[]

    The configuration(s) which were deleted by the request.

DeleteAutoscaleConfigurationsResponseServiceGroup

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the service where the configuration was deleted.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service where the configuration was deleted.

    Example: funky-instance-template
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

DeleteCertificatesResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 42

DeleteCertificatesResponseData

  • certificatesobject[]

    The certificate(s) which were deleted by the request.

DeleteCertificatesResponseDeletedCertificate

  • statusstring · enum · enum

    Indicates whether the delete operation was successful or not for this certificate.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the certificate which was deleted.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the certificate which was deleted.

    Example: funky-certificate
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No certificate with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

DeleteInstancesResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 221

DeleteInstancesResponseData

  • instancesobject[]

    The instance(s) which were deleted by the request.

DeleteInstancesResponseDeletedInstance

  • statusstring · enum · enum

    Indicates whether the start operation was successful or not for this instance.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the instance which was deleted.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the instance which was deleted.

    Example: funky-town-g756b5d
  • previous_statestring

    The previous state of the instance before it was deleted.

    Example: stopped
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

DeletePolicyRequest

  • namestring · required

    The Name of the policy to delete.

    Example: funky-policy

DeleteServiceGroupsResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 46

DeleteServiceGroupsResponseData

  • service_groupsobject[]

    The service group(s) which were deleted by the request.

DeleteServiceGroupsResponseDeletedServiceGroup

  • statusstring · enum · enum

    Indicates whether the delete operation was successful or not for this service group.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the service group which was deleted.

    Example: 12345678-90ab-cdef-1234-567890abcdef
  • namestring

    The name of the service group which was deleted.

    Example: funky-service-g7gum5cj
  • messagestring

    An optional message providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: 8

DeleteVolumesResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

DeleteVolumesResponseData

  • volumesobject[]

    The volume(s) which were deleted by the request.

DeleteVolumesResponseDeletedVolume

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the volume that was deleted.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the volume that was deleted.

    Example: funky-vol-g7gum5cj
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No volume with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

DetachVolumeByUUIDRequestBody

  • fromobject

    UUID or name of the instance to detach the volume from.

DetachVolumesRequest

  • uuidstring · uuid

    The UUID of the volume to detach. Mutually exclusive with name. Exactly one of uuid or name must be provided.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the volume to detach. Mutually exclusive with UUID. Exactly one of uuid or name must be provided.

    Example: funky-town-g7gum5cj
  • fromobject

    UUID or name of the instance to detach the volume from.

DetachVolumesRequestInstanceID

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for name:
  • namestring

    The name of the instance that the volume is detached from.

    Example: funky-town-g7gum5cj

DetachVolumesResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

DetachVolumesResponseData

  • volumesobject[]

    The volume(s) which were detached by the request.

DetachVolumesResponseDetachedVolume

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the volume that was detached.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the volume that was detached.

    Example: funky-vol-g7gum5cj
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No volume with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

Domain

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for certificate:
  • certificateobject

    Use an existing certificate for the domain. If this field is specified, the domain must be associated with a valid certificate.

GetAutoscaleConfigurationPolicyRequest

  • namestring · required

    The Name of the policy to get.

    Example: funky-policy

GetAutoscaleConfigurationPolicyResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

GetAutoscaleConfigurationPolicyResponseData

  • policiesobject[]

    The policy which was retrieved by the request.

GetAutoscaleConfigurationPolicyResponsePolicyResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • policyobject

    The policy which was retrieved by the request.

  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

GetAutoscaleConfigurationsResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

GetAutoscaleConfigurationsResponseData

  • service_groupsobject[]

    The configuration(s) which were retrieved by the request.

GetAutoscaleConfigurationsResponseServiceGroup

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the service where the configuration was created.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service where the configuration was created.

    Example: funky-instance-template
  • enabledboolean

    If the autoscale configuration is enabled.

    Example: true
  • min_sizeinteger · int64

    The minimum number of instances to keep running. Only if enabled is true.

    Example: 2
  • max_sizeinteger · int64

    The maximum number of instances to keep running. Only if enabled is true.

    Example: 10
  • warmup_time_msinteger · int64

    The warmup time in seconds for new instances. Only if enabled is true.

    Example: 3000
  • cooldown_time_msinteger · int64

    The cooldown time in seconds for the autoscale configuration. Only if enabled is true.

    Example: 3000
  • templateobject

    The instance template used for the autoscale configuration. Only if enabled is true.

  • policiesobject[]

    The policies applied to the autoscale configuration.

  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

GetCertificatesResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 55

GetCertificatesResponseData

  • certificatesobject[]

    The certificate(s) which were retrieved by the request.

GetImageResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the response.

    Example: No image with name 'my-image:latest'
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 46

GetImageResponseData

  • imageobject

    The instance that was created in this request.

GetInstanceLogsByUUIDRequestBody

  • offsetinteger · uint64

    The byte offset of the log output to receive. A negative sign makes the offset relative to the end of the log.

    Example: 56000
  • limitinteger · int64

    The amount of bytes to return at most.

    Example: 1500

GetInstanceLogsRequest

  • uuidstring · uuid · required

    The UUID of the instance to retrieve logs for. Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring · required

    The name of the instance to retrieve logs for. Mutually exclusive with UUID.

    Example: funky-town-g756b5d
  • offsetinteger · uint64

    The byte offset of the log output to receive. A negative sign makes the offset relative to the end of the log.

    Example: 450
  • limitinteger · int64

    The amount of bytes to return at most.

    Example: 3000

GetInstanceLogsResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 47

GetInstanceLogsResponseAvailable

  • startinteger · uint64

    The first byte offset that can be retrieved.

    Example: 250
  • endinteger · uint64

    The last byte offset that can be retrieved.

    Example: 2700

GetInstanceLogsResponseData

  • instancesobject[]

    The instance which this requested waited on.

    Note: only one instance can be specified in the request, so this will always contain a single entry.

GetInstanceLogsResponseLoggedInstance

  • uuidstring · uuid

    The UUID of the instance.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the instance.

    Example: funky-town-g756b5d
  • outputstring

    Base64 encoded log output of the instance.

    Example: d2h5LWFyZS15b3UtZGVjb2RpbmctdGhpcw==
  • availableobject

    Description of the log availability.

  • rangeobject

    Description of the range that was returned. Useful for requests with offset relative to end.

  • statestring · enum · enum

    State of the instance when the logs were retrieved.

    Enum values:
    stopped
    starting
    running
    draining
    stopping
    standby
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

GetInstanceLogsResponseRange

  • startinteger · uint64

    The first retrieved byte.

    Example: 450
  • endinteger · uint64

    The last retrieved byte.

    Example: funky-town-g756b5d

GetInstanceMetricsResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 76

GetInstanceMetricsResponseData

  • instancesobject[]

    The instance which this requested metrics for. Note: only one instance can be specified in the request, so this will always contain a single entry.

GetInstanceMetricsResponseInstanceMetrics

  • rss_bytesinteger · uint64

    Resident set size of the VMM in bytes.

    The resident set size (RSS) specifies the amount of physical memory that has been touched by the instance and is currently reserved for the instance on the Unikraft Cloud server. The RSS grows until the instance has touched all memory assigned to it via the memory_mb setting and may also exceed this value as supporting services running outside the instance acquire memory. The RSS is different from the current amount of memory allocated by the application, which is likely to fluctuate over the lifetime of the application. The RSS is not a cumulative metric. When the instance is stopped rss goes down to 0.

    Example: 5677765543
  • cpu_time_msinteger · uint64

    Consumed CPU time in milliseconds.

    Example: 560007005
  • boot_time_usinteger · uint64

    The boot time of the instance in microseconds. We take a pragmatic approach is to define the boot time. We calculate this as the difference in time between the moment the virtualization toolstack is invoked to respond to a VM boot request and the moment the OS starts executing user code (i.e., the end of the guest OS boot process). This is essentially the time that a user would experience in a deployment, minus the application initialization time, which we leave out since it is independent from the OS.

    Example: 560007005
  • net_time_usinteger · uint64

    This is the time it took for the user-level application to start listening on a non-localhost port measured in microseconds. This is the time from when the instance started until it reasonably ready to start responding to network requests. This is useful for measuring the time it takes for the instance to become operationally ready.

    Example: 560007005
  • rx_bytesinteger · uint64

    Total amount of bytes received from network.

    Example: 12312353
  • rx_packetsinteger · uint64

    Total count of packets received from network.

    Example: 43432
  • tx_bytesinteger · uint64

    Total amount of bytes transmitted over network.

    Example: 6565643
  • tx_packetsinteger · uint64

    Total count of packets transmitted over network.

    Example: 54534
  • nconnsinteger · uint64

    Number of currently established inbound connections (non-HTTP).

    Example: 5
  • nreqsinteger · uint64

    Number of in-flight HTTP requests.

    Example: 12
  • nqueuedinteger · uint64

    Number of queued inbound connections and HTTP requests.

    Example: 5
  • ntotalinteger · uint64

    Total number of inbound connections and HTTP requests handled.

    Example: 21
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

GetInstancesResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 432

GetInstancesResponseData

  • instancesobject[]

    The instance(s) that were retrieved by the request.

GetServiceGroupsResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 46

GetServiceGroupsResponseData

  • service_groupsobject[]

    The service group(s) which were retrieved by the request.

GetVolumesResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

GetVolumesResponseData

  • volumesobject[]

    The volume(s) which were retrieved by the request.

GoogleProtobufValue

HealthzResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the response.

    Example: Invalid name 'non-funky-town'
  • errorsobject[]

    A list of errors which may have occurred during the request.

  • dataobject

    The response data for this request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 875

HealthzResponseData

  • servicesobject

Image

  • tagstring

    The canonical name of the image is known as the "tag".

    Example: my-image:latest
  • digeststring

    The digest of the image is a unique identifier of the image manifest which is a string representation including the hashing algorithm and the hash value separated by a colon.

    Example: 256
  • descriptionstring

    A description of the image.

    Example: My image description
  • created_atstring · date-time

    When the image was created.

    Example: 2023-10-01T12:00:00Z
  • archstring

    The architecture of the image.

    Example: x86_64
  • entrypointstring[]

    The entrypoint of the image is the command that is run when the image is started.

    Example: ["/bin/sh","-c"]
  • cmdstring[]

    The command to run when the image is started.

    Example: ["/bin/sh","-c"]
  • envstring[]

    The environment variables to set when the image is started.

    Example: ["ENV_VAR=value"]
  • portsstring[]

    Documented port mappings for the image.

    Example: ["8080:80"]
  • volumesstring[]

    Documented volumes for the image.

    Example: ["/data"]
  • labelsobject

    Labels are key-value pairs.

  • workdirstring

    The working directory for the image is the directory that is set as the current working directory when the image is started.

    Example: /app
  • kernelobject

    The kernel object is a reference to the kernel that is used by the image.

  • auxiliary_romsobject[]

    List of auxiliary ROMs that are used by the image.

Instance

  • uuidstring · uuid

    The UUID of the instance.

    This is a unique identifier for the instance that is generated when the instance is created. The UUID is used to reference the instance in API calls and can be used to identify the instance in all API calls that require an instance identifier.

  • namestring

    The name of the instance.

    This is a human-readable name that can be used to identify the instance. The name must be unique within the context of your account. The name can also be used to identify the instance in API calls.

    Example: funky-town-g756b5d
  • created_atstring · date-time

    The time the instance was created.

    Example: 2023-10-01T12:00:00Z
  • statestring · enum · enum

    The state of the instance. This indicates the current state of the instance, such as whether it is running, stopped, or in an error state.

    Enum values:
    stopped
    starting
    running
    draining
    stopping
    standby
  • private_fqdnstring

    The internal hostname of the instance. This address can be used privately within the Unikraft Cloud network to access the instance. It is not accessible from the public Internet.

    Example: funky-town-g756b5d.internal
  • imagestring

    The image used to create the instance. This is a reference to the Unikraft image that was used to create the instance.

    Example: nginx:latest
  • memory_mbinteger · uint64

    The amount of memory in megabytes allocated for the instance. This is the total amount of memory that is available to the instance for its operations.

    Example: 1024
  • vcpusinteger · uint32

    The number of vCPUs allocated for the instance. This is the total number of virtual CPUs that are available to the instance for its operations.

    Example: 1
  • argsstring[]

    The arguments passed to the instance when it was started. This is a list of command-line arguments that were provided to the instance at startup. These arguments can be used to configure the behavior of the instance and its applications.

    Example: --port=8080 --debug
  • envobject

    Environment variables set for the instance.

    Example: {"ENV_VAR":"value"}
  • start_countinteger · uint64

    The total number of times the instance has been started. This is a counter that increments each time the instance is started, regardless of whether it was manually stopped or restarted. This can be useful for tracking the usage of the instance over time and/or for debugging purposes.

    Example: 6
  • restart_countinteger · uint64

    The total number of times the instance has been restarted. This is a counter that increments each time the instance has been restarted. This can be useful for tracking the usage of the instance over time and/or for debugging purposes.

    Example: 1
  • started_atstring · date-time

    The time the instance was started. This is the timestamp when the instance was last started.

    Example: 2023-10-01T12:00:00Z
  • stopped_atstring · date-time

    The time the instance was stopped. This is the timestamp when the instance was last stopped. If the instance is currently running, this field will be empty.

    Example: 2023-10-01T12:00:00Z
  • uptime_msinteger · uint64

    The total amount of time the instance has been running in milliseconds.

    Example: 8954050300
  • vmm_start_time_usinteger · uint64

    (Developer-only). The time taken between the main controller and the beginning of execution of the VMM (Virtual Machine Monitor) measured in microseconds. This field is primarily used for debugging and performance analysis purposes.

    Example: 70040
  • vmm_load_time_usinteger · uint64

    (Developer-only). The time it took the VMM (Virtual Machine Monitor) to load the instance's kernel and initramfs into VM memory measured in microseconds. This field is primarily used for debugging and performance analysis purposes.

    Example: 4050
  • vmm_ready_time_usinteger · uint64

    (Developer-only). The time taken for the VMM (Virtual Machine Monitor) to become ready to execute the instance measured in microseconds. This is the time from when the VMM started until it was ready to execute the instance's code. This field is primarily used for debugging and performance analysis purposes.

    Example: 400
  • boot_time_usinteger · uint64

    The boot time of the instance in microseconds. We take a pragmatic approach is to define the boot time. We calculate this as the difference in time between the moment the virtualization toolstack is invoked to respond to a VM boot request and the moment the OS starts executing user code (i.e., the end of the guest OS boot process). This is essentially the time that a user would experience in a deployment, minus the application initialization time, which we leave out since it is independent from the OS.

    Example: 9000
  • net_time_usinteger · uint64

    This is the time it took for the user-level application to start listening on a non-localhost port measured in microseconds. This is the time from when the instance started until it reasonably ready to start responding to network requests. This is useful for measuring the time it takes for the instance to become operationally ready.

    Example: 11000
  • stop_reasoninteger · uint32

    The instance stop reason.

    Provides reason as to why an instance is stopped or in the process of shutting down. The stop reason is a bitmask that tells you the origin of the shutdown:

    Bit43210 (LSB)
    Purpose[F]orced[U]ser[P]latform[A]pp[K]ernel
    • Forced: This was a force stop. A forced stop does not give the instance a chance to perform a clean shutdown. Bits 0 (Kernel) and 1 (App) can thus never be set for forced shutdowns. Consequently, there won't be an exit_code or stop_code.
    • User: Stop initiated by user, e.g. via an API call.
    • Platform: Stop initiated by platform, e.g. an autoscale policy.
    • App: The Application exited. The exit_code field will be set.
    • Kernel: The kernel exited. The stop_code field will be set.

    For example, the stop reason will contain the following values in the given scenarios:

    ValueBitmaskAliasesScenario
    2811100FUP--Forced user-initiated shutdown.
    1501111-UPAKRegular user-initiated shutdown. The application and kernel have exited. The exit_code and stop_code indicate if the application and kernel shut down cleanly.
    1301101-UP-KThe user initiated a shutdown but the application was forcefully killed by the kernel during shutdown. This can be the case if the image does not support a clean application exit or the application crashed after receiving a termination signal. The exit_code won’t be present in this scenario.
    700111--PAKUnikraft Cloud initiated the shutdown, for example, due to scale-to-zero. The application and kernel have exited. The exit_code and stop_code indicate if the application and kernel shut down cleanly.
    300011---AKThe application exited. The exit_code and stop_code indicate if the application and kernel shut down cleanly.
    100001----KThe instance likely expierenced a fatal crash and the stop_code contains more information about the cause of the crash.
    000000-----The stop reason is unknown.
    Example: 15
  • exit_codeinteger · uint32

    The application exit code.

    This is the code which the application returns upon leaving its main entry point. The encoding of the exit code is application specific. See the documentation of the application for more details. Usually, an exit code of 0 indicates success / no failure.

    Example: 137
  • stop_codeinteger · uint32

    The kernel stop code.

    This value encodes multiple details about the stop irrespective of the application.

    Code
    MSB LSB ┌──────────────┬──────────┬──────────┬───────────┬────────┐ │ 31 ────── 24 │ 23 ── 16 │ 15 │ 14 ──── 8 │ 7 ── 0 │ ├──────────────┼──────────┼──────────┼───────────┼────────┤ │ reserved[^1] │ errno │ shutdown │ initlevel │ reason │ └──────────────┴──────────┴──────────┴───────────┴────────┘
    • errno: The application errno, using Linux's errno.h values. (Optional, can be 0.)
    • shutdown: Whether the shutdown originated from the inittable (0) or from the termtable (1).
    • initlevel: The initlevel at the time of the stop.
    • reason: The reason for the stop. See StopCodeReason.
    Example: 33024
  • restart_policystring · enum · enum

    The restart configuration for the instance.

    When an instance stops either because the application exits or the instance crashes, Unikraft Cloud can auto-restart your instance. Auto-restarts are performed according to the restart policy configured for a particular instance.

    The policy can have the following values:

    PolicyDescription
    neverNever restart the instance (default).
    alwaysAlways restart the instance when the stop is initiated from within the instance (i.e., the application exits or the instance crashes).
    on-failureOnly restart the instance if it crashes.

    When an instance stops, the stop reason and the configured restart policy are evaluated to decide if a restart should be performed. Unikraft Cloud uses an exponential back-off delay (immediate, 5s, 10s, 20s, 40s, ..., 5m) to slow down restarts in tight crash loops. If an instance runs without problems for 10s the back-off delay is reset and the restart sequence ends.

    The restart.attempt attribute reported in counts the number of restarts performed in the current sequence. The restart.next_at field indicates when the next restart will take place if a back-off delay is in effect.

    A manual start or stop of the instance aborts the restart sequence and resets the back-off delay.

    Enum values:
    never
    always
    on_failure
  • scale_to_zeroobject

    The scale-to-zero configuration for the instance.

    With conventional cloud platforms you need to keep at least one instance running at all times to be able to respond to incoming requests. Performing a just-in-time cold boot is simply too time-consuming and would create a response latency of multiple seconds. This is not the case with Unikraft Cloud. Instances on Unikraft Cloud are able to cold boot within milliseconds, which allows us to perform low-latency scale-to-zero.

    To enable scale-to-zero for an instance it is sufficient to add a scale_to_zero configuration block. Unikraft Cloud will then put the instance into standby if there is no traffic to your service within the window of a cooldown period. When there is new traffic coming in, it is automatically started again.

    If you have a heavyweight application that takes long to cold boot or has bad first request latency (e.g., with JIT compilation) consider to enable stateful scale-to-zero.

  • volumesobject[]

    The list of volumes attached to the instance.

  • service_groupobject

    The service group configuration for the instance.

  • network_interfacesobject[]

    The network interfaces of the instance.

  • tagsstring[]

    The tags associated with the instance.

  • statusstring · enum · enum

    An optional field representing the status of the request. This field is only set when this message object is used as a response message.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: 8

InstanceCreateArgsInstanceCreateRequestRoms

  • imagestring · required

    The image of the ROM to use for the autoscale configuration.

  • namestring

    The name of the ROM to use for the autoscale configuration.

InstanceInstanceServiceGroup

  • uuidstring · uuid

    The UUID of the service group.

    This is a unique identifier for the service group that is generated when the service is created. The UUID is used to reference the service group in API calls and can be used to identify the service in all API calls that require an service identifier.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service group.

    This is a human-readable name that can be used to identify the service group. The name is unique within the context of your account. The name can also be used to identify the service group in API calls.

    Example: funky-service-g756b5d
  • domainsobject[]

    The domain configuration for the service group.

InstanceInstanceVolume

  • uuidstring · uuid

    The UUID of the volume.

    This is a unique identifier for the volume that is generated when the volume is created. The UUID is used to reference the volume in API calls and can be used to identify the volume in all API calls that require a volume identifier.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the volume.

    This is a human-readable name that can be used to identify the volume. The name must be unique within the context of your account. The name can also be used to identify the volume in API calls.

    Example: funky-volume-g756b5d
  • atstring

    The mount point of the volume in the instance. This is the directory in the instance where the volume will be mounted.

    Example: /mnt/funky-volume
  • read_onlyboolean

    Whether the volume is read-only or not.

    Example: true

InstanceNetworkInterface

  • uuidstring · uuid

    The UUID of the network interface. This is a unique identifier for the network interface that is generated when the instance is created.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • private_ipstring

    The private IP address of the network interface. This is the internal IP address that is used for communication between instances within the same network.

    Example: 10.0.0.61
  • macstring

    The MAC address of the network interface.

    Example: 12:b0:a0:00:00:3d
  • rx_bytesinteger · uint64

    Amount of bytes received from interface.

    Example: 5345
  • rx_packetsinteger · uint64

    Count of packets received from interface

    Example: 110
  • tx_bytesinteger · uint64

    Amount of bytes sent to interface.

    Example: 1500
  • tx_packetsinteger · uint64

    Count of packets sent to interface

    Example: 12

InstanceScaleToZero

  • enabledboolean

    Indicates whether scale-to-zero is enabled for the instance.

    Example: true
  • policystring · enum · enum

    The specific policy to use for scaling the instance to zero.

    Enum values:
    on
    off
    idle
  • statefulboolean

    Whether the instance should be stateful when scaled to zero. If set to true, the instance will retain its state (e.g., RAM contents) when scaled to zero. This is useful for instances that need to maintain their state across scale-to-zero operations. If set to false, the instance will lose its state when scaled to zero, and it will be restarted from scratch when scaled back up.

    Example: true
  • cooldown_time_msinteger · int32

    The cooldown time in milliseconds before the instance can be scaled to zero again. This is useful to prevent rapid scaling to zero and back up, which can lead to performance issues or resource exhaustion.

    Example: 3000

InstanceServiceGroupInstanceDomain

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for certificate:
  • certificateobject

    The certificate associated with the domain.

    The certificate is used to secure the domain with TLS/SSL. If no certificate is specified, Unikraft Cloud will automatically generate a new certificate for the domain based on Let's Encrypt and seek to accomplish a DNS-01 challenge.

NameOrUUID

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object · requires: uuid
type = object · requires: name
Properties for uuid:
  • uuidstring · uuid · required

    Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000

Object

  • digeststring

    The digest is a string representation including the hashing algorithm and the hash value separated by a colon.

    Example: sha256:1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
  • media_typestring

    The media type of the layer is a string that identifies the type of content that the layer contains.

    Example: application/vnd.oci.image.layer.v1.tar
  • sizeinteger · int64

    The size of the layer in bytes.

    Example: 655

Quotas

  • uuidstring · uuid

    The UUID of the quota.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • usedobject

    Used quota

  • hardobject

    Configured quota limits

  • limitsobject

    Additional limits

  • statusstring · enum · enum

    An optional field representing the status of the request. This field is only set when this message object is used as a response message.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: No user with name 'funky-user'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: 8

QuotasLimits

  • min_memory_mbinteger · int64

    Minimum amount of memory assigned to live instances in megabytes

    Example: 16
  • max_memory_mbinteger · int64

    Maximum amount of memory assigned to live instances in megabytes

    Example: 2048
  • min_volume_mbinteger · int64

    Minimum size of a volume in megabytes

    Example: 1
  • max_volume_mbinteger · int64

    Maximum size of a volume in megabytes

    Example: 1024
  • min_autoscale_sizeinteger · int64

    Minimum size of an autoscale group

    Example: 1
  • max_autoscale_sizeinteger · int64

    Maximum size of an autoscale group

    Example: 16
  • min_vcpusinteger · int64

    Minimum number of vCPUs

    Example: 2
  • max_vcpusinteger · int64

    Maximum number of vCPUs

    Example: 4

QuotasResponse

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for message:
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations

QuotasResponseData

  • quotasobject[]

    The quota(s) which were retrieved by the request.

QuotasStats

  • instancesinteger · int64

    Number of instances

    Example: 16
  • live_instancesinteger · int64

    Number of instances that are not in the stopped state

    Example: 4
  • live_vcpusinteger · int64

    Number of vCPUs

    Example: 4
  • live_memory_mbinteger · int64

    Amount of memory assigned to instances that are not in the stopped state in megabytes

    Example: 2048
  • service_groupsinteger · int64

    Number of services

    Example: 15
  • servicesinteger · int64

    Number of published network ports over all existing services

    Example: 30
  • volumesinteger · int64

    Number of volumes

    Example: 2
  • total_volume_mbinteger · int64

    Total size of all volumes in megabytes

    Example: 1024

ResponseError

  • statusinteger · uint64

    The HTTP status code of the error.

    Example: 401

ResponseStatus

string · enum · enum
Enum values:
success
error

The response status of an API request.

Service

  • portinteger · uint32 · required

    This is the public-facing port that the service will be accessible from on the Internet.

    Example: 443
  • destination_portinteger · uint32

    The port number that the instance is listening on. This is the internal port which Unikraft Cloud will forward traffic to.

    Example: 8080
  • handlersstring[]

    Connection handlers to use for the service. Handlers define how the service will handle incoming connections and forward traffic from the Internet to your application. For example, a service can be configured to terminate TLS connections, redirect HTTP traffic, or enable HTTP mode for load balancing. You configure the handlers for every published service port individually.

    Enum values:
    tls
    http
    redirect

ServiceGroup

  • uuidstring · uuid

    The UUID of the service group.

    This is a unique identifier for the service group that is generated when the service group is created. The UUID is used to reference the service in API calls and can be used to identify the service group in all API calls that require an identifier.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the service group.

    This is a human-readable name that can be used to identify the service group. The name must be unique within the context of your account. The name can also be used to identify the service in API calls.

    Example: funky-service-g7gum5cj
  • created_atstring · date-time

    The time the service was created.

    Example: 2023-10-01T12:00:00Z
  • persistentboolean

    Indicates if the service will stay remain even after the last instance detached. If this is set to false, the service will be deleted when the last instance detached from it. If this is set to true, the service will remain and can be reused by other instances. This is useful if you want to keep the service configuration, e.g., the published ports, handlers, and domains, even if there are no instances assigned to it.

    Example: true
  • autoscaleboolean

    Indicates if the service has autoscale enabled. See the associated autoscale documentation for more information about how to set this up. Autoscale policies can be set up after the service has been created.

    Example: true
  • soft_limitinteger · uint64

    The soft limit is used by the Unikraft Cloud load balancer to decide when to wake up another standby instance. For example, if the soft limit is set to 5 and the service consists of 2 standby instances, one of the instances receives up to 5 concurrent requests. The 6th parallel requests wakes up the second instance. If there are no more standby instances to wake up, the number of requests assigned to each instance will exceed the soft limit. The load balancer makes sure that when the number of in-flight requests goes down again, instances are put into standby as fast as possible.

    Example: 1
  • hard_limitinteger · uint64

    The hard limit defines the maximum number of concurrent requests that an instance assigned to the this service can handle. The load balancer will never assign more requests to a single instance. In case there are no other instances available, excess requests fail (i.e., they are blocked and not queued).

    Example: 100
  • servicesobject[]

    List of published network ports for this service and the destination port to which Unikraft Cloud will forward traffic to. Additional handlers can be defined for each published port in order to define how the service will handle incoming connections and forward traffic from the Internet to your application. For example, a service can be configured to terminate TLS connections, redirect HTTP traffic, or enable HTTP mode for load balancing.

  • domainsobject[]

    List of domains associated with the service. Domains are used to access the service over the Internet.

  • instancesobject[]

    List of instances assigned to the service.

  • statusstring · enum · enum

    An optional field representing the status of the request. This field is only set when this message object is used as a response message.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: 8

ServiceGroupInstance

  • uuidstring · uuid

    The UUID of the instance. This is a unique identifier for the instance that is generated when the instance is created. The UUID is used to reference the instance in API calls and can be used to identify the instance in all API calls that require an instance identifier.

    Example: 12345678-90ab-cdef-1234-567890abcdef
  • namestring

    The name of the instance. This is a human-readable name that can be used to identify the instance. The name must be unique within the context of your account. If no name is specified, a random name is generated for you. The name can also be used to identify the instance in API calls.

    Example: funky-vol-g7gum5cj

ServiceGroupTemplate

  • namestring

    The name of the template used for the autoscale configuration.

    Example: funky-instance-template
  • uuidstring · uuid

    The UUID of the template used for the autoscale configuration.

    Example: 123e4567-e89b-12d3-a456-426614174000

StartInstanceResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 256

StartInstanceResponseData

  • instancesobject[]

    The instance(s) which were started by the request.

StartInstanceResponseStartedInstance

  • statusstring · enum · enum

    Indicates whether the start operation was successful or not for this instance.

    Enum values:
    success
    error
  • uuidstring · uuid

    The UUID of the instance which was deleted.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the instance which was deleted.

    Example: funky-town-g756b5d
  • statestring

    The current state of the instance after this request.

    Example: running
  • previous_statestring

    The previous state of the instance before it was deleted.

    Example: stopped
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

StopInstanceResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 23

StopInstanceResponseData

  • instancesobject[]

    The instance(s) which were stopped by the request.

StopInstanceResponseStoppedInstance

  • uuidstring · uuid

    The UUID of the instance.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the instance.

    Example: funky-town-g756b5d
  • statestring · enum · enum

    The current state of the instance.

    Enum values:
    stopped
    starting
    running
    draining
    stopping
    standby
  • previous_statestring · enum · enum

    The previous state of the instance before the stop operation was invoked.

    Enum values:
    stopped
    starting
    running
    draining
    stopping
    standby
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

StopInstancesRequestID

  • uuidstring · uuid · required

    The UUID of the instance to stop. Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring · required

    The name of the instance to stop. Mutually exclusive with UUID.

    Example: funky-town-g756b5d
  • forceboolean

    Whether to immediately force stop the instance.

    Example: false
  • drain_timeout_msinteger · uint64

    Timeout for draining connections in milliseconds. The instance does not receive new connections in the draining phase. The instance is stopped when the last connection has been closed or the timeout expired. The maximum timeout may vary. Use -1 for the largest possible value.

    Note: This endpoint does not block. Use the wait endpoint for the instance to reach the stopped state.

    Example: 250

UpdateInstanceByUUIDRequestBody

  • propstring · enum · enum · required

    The property to modify.

    Enum values:
    image
    args
    env
    memory_mb
    vcpus
    scale_to_zero
    tags
    delete_lock
    Example: memory_mb
  • opstring · enum · enum · required

    The operation to perform on the property.

    Enum values:
    set
    add
    del
    Example: set
  • idstring

    (Optional). A client-provided identifier for tracking this operation in the response.

    Example: op-1
  • value

    The value for the update operation. The type depends on the property and operation:

    • For "image": string
    • For "args": string or array of strings
    • For "env": object (for SET/ADD) or string/array of strings (for DEL)
    • For "memory_mb": integer
    • For "vcpus": integer
    • For "scale_to_zero": object with cooldown_time_ms, policy, and stateful fields
    • For "tags": array of strings
    • For "delete_lock": boolean

UpdateInstancesRequest

  • propstring · enum · enum · required

    The property to modify.

    Enum values:
    image
    args
    env
    memory_mb
    vcpus
    scale_to_zero
    tags
    delete_lock
    Example: memory_mb
  • opstring · enum · enum · required

    The operation to perform on the property.

    Enum values:
    set
    add
    del
    Example: set
  • idstring

    (Optional). A client-provided identifier for tracking this operation in the response.

    Example: op-1
  • uuidstring · uuid

    The UUID of the instance to update. Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the instance to update. Mutually exclusive with UUID.

    Example: funky-town-g756b5d
  • value

    The value for the update operation. The type depends on the property and operation:

    • For "image": string
    • For "args": string or array of strings
    • For "env": object (for SET/ADD) or string/array of strings (for DEL)
    • For "memory_mb": integer
    • For "vcpus": integer
    • For "scale_to_zero": object with cooldown_time_ms, policy, and stateful fields
    • For "tags": array of strings
    • For "delete_lock": boolean

UpdateInstancesResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 76

UpdateInstancesResponseData

  • instancesobject[]

    List of instances that were processed during the update operation.

UpdateInstancesResponseUpdatedInstance

  • uuidstring · uuid

    The UUID of the instance that was updated.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the instance that was updated.

    Example: funky-town-g756b5d
  • statusstring

    The status of this particular instance update operation.

    Example: success
  • idstring

    (Optional). The client-provided ID from the request.

    Example: op-1
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

UpdateServiceGroupByUUIDRequestBody

  • propstring · enum · enum · required

    The property to modify.

    Enum values:
    services
    domains
    soft_limit
    hard_limit
    Example: services
  • opstring · enum · enum · required

    The operation to perform.

    Enum values:
    set
    add
    del
    Example: set
  • idstring

    (Optional). A client-provided identifier for tracking this operation in the response.

    Example: op-1
  • value

    The value for the update operation:

    • For "services": array of Service objects
    • For "domains": array of Domain objects
    • For "soft_limit": integer (1–65535), must be <= "hard_limit"
    • For "hard_limit": integer (1–65535), must be >= "soft_limit"

UpdateServiceGroupsRequestItem

  • propstring · enum · enum · required

    The property to modify.

    Enum values:
    services
    domains
    soft_limit
    hard_limit
    Example: services
  • opstring · enum · enum · required

    The operation to perform.

    Enum values:
    set
    add
    del
    Example: set
  • idstring

    (Optional). A client-provided identifier for tracking this operation in the response.

    Example: op-1
  • uuidstring · uuid

    The UUID of the service group to update. Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service group to update. Mutually exclusive with UUID.

    Example: funky-town-g756b5d
  • value

    The value for the update operation:

    • For "services": array of Service objects
    • For "domains": array of Domain objects
    • For "soft_limit": integer (1–65535), must be <= "hard_limit"
    • For "hard_limit": integer (1–65535), must be >= "soft_limit"

UpdateServiceGroupsResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 76

UpdateServiceGroupsResponseData

  • service_groupsobject[]

    List of service groups that were processed during the update operation.

UpdateServiceGroupsResponseUpdatedServiceGroup

  • uuidstring · uuid

    The UUID of the service group that was updated.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service group that was updated.

    Example: funky-town-g756b5d
  • statusstring

    The status of this particular service group update operation.

    Example: success
  • idstring

    (Optional). The client-provided ID from the request.

    Example: op-1
  • messagestring

    An optional message providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: No service with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: 8

UpdateVolumeByUUIDRequestBody

  • propstring · enum · enum · required

    The property to modify.

    Enum values:
    size_mb
    tags
    quota_policy
    delete_lock
    Example: size_mb
  • opstring · enum · enum · required

    The operation to perform.

    Enum values:
    set
    add
    del
    Example: set
  • idstring

    (Optional). A client-provided identifier for tracking this operation in the response.

    Example: op-1
  • value

    The value for the update operation. The type depends on the property and operation:

    • For "size_mb": unsigned integer
    • For "quota_policy": "static" or "dynamic"
    • For "tags": array of Strings
    • For "delete_lock": boolean

UpdateVolumesRequestItem

  • propstring · enum · enum · required

    The property to modify.

    Enum values:
    size_mb
    tags
    quota_policy
    delete_lock
    Example: size_mb
  • opstring · enum · enum · required

    The operation to perform.

    Enum values:
    set
    add
    del
    Example: set
  • idstring

    (Optional). A client-provided identifier for tracking this operation in the response.

    Example: op-1
  • uuidstring · uuid

    The UUID of the volume to update. Mutually exclusive with name.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the volume to update. Mutually exclusive with UUID.

    Example: funky-town-g756b5d
  • value

    The value for the update operation. The type depends on the property and operation:

    • For "size_mb": unsigned integer
    • For "quota_policy": 1 - static reservation, 2 - dynamic reservation
    • For "tags": array of Strings
    • For "delete_lock": boolean

UpdateVolumesResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 76

UpdateVolumesResponseData

  • volumesobject[]

    List of volumes that were processed during the update operation.

UpdateVolumesResponseUpdatedVolume

  • uuidstring · uuid

    The UUID of the volume that was updated.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the service group that was updated.

    Example: funky-town-g756b5d
  • statusstring

    The status of this particular volume update operation.

    Example: success
  • idstring

    (Optional). The client-provided ID from the request.

    Example: op-1
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No volume with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8

Volume

  • uuidstring · uuid

    The UUID of the volume.

    This is a unique identifier for the volume that is generated when the volume is created. The UUID is used to reference the volume in API calls and can be used to identify the volume in all API calls that require an identifier.

    Example: c1d2e3f4-5678-90ab-cdef-1234567890ab
  • namestring

    The name of the volume.

    This is a human-readable name that can be used to identify the volume. The name must be unique within the context of your account. The name can also be used to identify the volume in API calls.

    Example: funky-town-g7gum5cj
  • created_atstring · date-time

    The time the volume was created.

    Example: 2021-01-01T00:00:00Z
  • statestring · enum · enum

    Current state of the volume.

    Enum values:
    uninitialized
    initializing
    available
    idle
    mounted
    busy
    error
  • size_mbinteger · uint64

    The size of the volume in megabytes.

    Example: 64
  • persistentboolean

    Indicates if the volume will stay alive when the last instance is deleted that this volume is attached to.

    Example: true
  • attached_toobject[]

    List of instances that this volume is attached to.

  • mounted_byobject[]

    List of instances that have this volume mounted.

  • tagsstring[]

    The tags associated with the volume.

  • statusstring · enum · enum

    An optional field representing the status of the request. This field is only set when this message object is used as a response message.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: No volume with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is only set when this message object is used as a response message, and is useful when the status is not success.

    Example: 8

VolumeInstanceID

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for name:
  • namestring

    The name of the instance that the volume is attached to.

    Example: funky-town-g7gum5cj

VolumeVolumeInstanceMount

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for name:
  • namestring

    The name of the instance that the volume is mounted in.

    Example: funky-town-g7gum5cj

WaitInstanceByUUIDRequestBody

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
Properties for timeout_ms:
  • timeout_msinteger · int64

    Timeout in milliseconds to wait for the instance to reach the desired state. If the timeout is reached, the request will fail with an error. A value of -1 means to wait indefinitely until the instance reaches the desired state.

    Example: 450

WaitInstanceResponse

  • statusstring · enum · enum

    The status of the response.

    Enum values:
    success
    error
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: Failed to perform all operations
  • dataobject

    The response data for this request.

  • errorsobject[]

    A list of errors which may have occurred during the request.

  • op_time_usinteger · uint64

    The operation time in microseconds. This is the time it took to process the request and generate the response.

    Example: 450

WaitInstanceResponseData

  • instancesobject[]

    The instance(s) which this requested waited on.

WaitInstanceResponseWaitedInstance

  • uuidstring · uuid

    The UUID of the instance.

    Example: 123e4567-e89b-12d3-a456-426614174000
  • namestring

    The name of the instance.

    Example: funky-town-g756b5d
  • statestring · enum · enum

    The current state of the instance.

    Enum values:
    stopped
    starting
    running
    draining
    stopping
    standby
  • messagestring

    An optional message providing additional information about the status. This field is useful when the status is not success.

    Example: No instance with name 'funky-town-g756b5d'
  • errorinteger · int32

    An optional error code providing additional information about the status. This field is useful when the status is not success.

    Example: 8