Service

Update service auto scaling settings

Updates minimum and maximum memory limits per replica and idle mode scaling behavior for the service. Supports both vertical autoscaling (fixed replica count, variable memory) and horizontal autoscaling (variable replica count, fixed memory). The memory settings are available only for "production" services and must be a multiple of 4 starting from 8GB. For vertical autoscaling, please contact support to enable adjustment of numReplicas. For horizontal autoscaling (autoscalingMode "horizontal" with minReplicas/maxReplicas), contact support to enable the feature for your organization.

patch/v1/organizations/{organizationId}/services/{serviceId}/replicaScaling

Request

  • Base URL: https://api.clickhouse.cloud
  • URL: https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/replicaScaling
  • Auth: HTTP basic

Path parameters

organizationIdstring uuid required

ID of the organization that owns the service.

serviceIdstring uuid required

ID of the service to update scaling parameters.

Request body

minReplicaMemoryGbnumber

Minimum auto-scaling memory in Gb for a single replica. Available only for 'production' services. Must be a multiple of 4 and greater than or equal to 8. A range in vertical autoscaling; equal to maxReplicaMemoryGb in horizontal.

maxReplicaMemoryGbnumber

Maximum auto-scaling memory in Gb for a single replica. Available only for 'production' services. Must be a multiple of 4 and lower than or equal to 120 for non paid services or 356 for paid services. A range in vertical autoscaling; equal to minReplicaMemoryGb in horizontal.

autoscalingMode'vertical' | 'horizontal'

Target autoscaling mode. Omit to keep the service on its current mode. "vertical" runs a fixed replica count while memory scales between minReplicaMemoryGb and maxReplicaMemoryGb; "horizontal" scales the replica count between minReplicas and maxReplicas at a fixed per-replica memory (minReplicaMemoryGb equal to maxReplicaMemoryGb). Switching to horizontal requires the feature to be enabled for the organization.

numReplicasinteger

Fixed replica count for vertical autoscaling (autoscalingMode "vertical"). Mutually exclusive with minReplicas/maxReplicas. When switching to vertical (autoscalingMode "vertical") with numReplicas and no memory, the service's stored baseline per-replica memory is kept as the new vertical range. Please contact support to enable adjustment of numReplicas.

minReplicasinteger

Minimum number of replicas. A minReplicas/maxReplicas band scales the replica count in horizontal autoscaling (autoscalingMode "horizontal"). Must be provided together with maxReplicas. Mutually exclusive with numReplicas. Requires horizontal autoscaling to be enabled for the service, unless autoscalingMode is omitted or "vertical" and minReplicas equals maxReplicas (an equal band is then an accepted vertical fixed count and needs no horizontal entitlement).

maxReplicasinteger

Maximum number of replicas. A minReplicas/maxReplicas band scales the replica count in horizontal autoscaling (autoscalingMode "horizontal"). Must be provided together with minReplicas. Mutually exclusive with numReplicas. Requires horizontal autoscaling to be enabled for the service, unless autoscalingMode is omitted or "vertical" and minReplicas equals maxReplicas (an equal band is then an accepted vertical fixed count and needs no horizontal entitlement).

idleScalingboolean

When set to true the service is allowed to scale down to zero when idle. True by default.

idleTimeoutMinutesnumber

Set minimum idling timeout (in minutes). Must be >= 5 minutes.

Example request

{
  "minReplicaMemoryGb": 16,
  "maxReplicaMemoryGb": 120,
  "autoscalingMode": "vertical",
  "numReplicas": 3,
  "minReplicas": 1,
  "maxReplicas": 5
}

Response

Successful response

statusnumber

HTTP status code.

requestIdstring uuid

Unique id assigned to every request. UUIDv4

Example response

{
  "status": 200,
  "result": {
    "endpoints": [
      {
        "protocol": "mysql"
      }
    ],
    "minTotalMemoryGb": 48,
    "maxTotalMemoryGb": 360,
    "minReplicaMemoryGb": 16,
    "maxReplicaMemoryGb": 120,
    "numReplicas": 3,
    "minReplicas": 1,
    "maxReplicas": 5,
    "autoscalingMode": "vertical",
    "replicaMemoryGb": 32,
    "tags": [
      {
        "key": "Environment",
        "value": "staging"
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.