> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nebius.com/llms.txt
> Use this file to discover all available pages before exploring further.

# update

<div>
  <h2>Name</h2>

  <p style={{ paddingLeft: "4ch" }}>
    <code>nebius msp postgresql v1alpha1 cluster update</code>
  </p>

  <p style={{ paddingLeft: "7ch" }}>
    Updates the PostgreSQL cluster.
  </p>
</div>

<div>
  <h2>Synopsis</h2>

  <p style={{ paddingLeft: "4ch" }}>
    ```
    nebius msp postgresql v1alpha1 cluster update [id]
      --bootstrap-user-password
      --config-pooler-config-max-pool-size
      --config-pooler-config-pooling-mode
      --config-postgresql-config-16-autovacuum-analyze-scale-factor
      --config-postgresql-config-16-autovacuum-naptime
      --config-postgresql-config-16-autovacuum-vacuum-cost-delay
      --config-postgresql-config-16-autovacuum-vacuum-cost-limit
      --config-postgresql-config-16-autovacuum-vacuum-scale-factor
      --config-postgresql-config-16-autovacuum-work-mem
      --config-postgresql-config-16-default-transaction-read-only
      --config-postgresql-config-16-idle-in-transaction-session-timeout
      --config-postgresql-config-16-max-connections
      --config-postgresql-config-16-search-path
      --config-postgresql-config-16-shared-buffers
      --config-postgresql-config-16-statement-timeout
      --config-public-access
      --config-template-disk-size-gibibytes
      --config-template-disk-type
      --config-template-hosts-count
      --config-template-resources-platform
      --config-template-resources-preset
      --id
      --labels
      --labels-add
      --labels-remove
      --name
      --parent-id
      --resource-version
      --async
      --clear-mask
      --diff
      --full
      --patch
    ```
  </p>
</div>

<div>
  <h2>Positional Arguments</h2>

  <p style={{ paddingLeft: "4ch" }}>
    <code>id</code>
  </p>

  <p style={{ paddingLeft: "8ch" }}>
    Identifier for the resource, unique for its resource type.
  </p>
</div>

<div>
  <h2>Options</h2>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--bootstrap-user-password` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Password of the bootstrap PostgreSQL user.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-pooler-config-max-pool-size` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Maximum number of connections in the pool for a single user/database pair.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-pooler-config-pooling-mode` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Mode that the connection pooler is working in.
    </p>

    <p style={{ paddingLeft: "4ch" }}>A value must be one of:</p>

    <ul style={{ paddingLeft: "8ch" }}>
      <li>
        <code>pooling\_mode\_unspecified</code>
      </li>

      <li>
        <code>session</code>
      </li>

      <li>
        <code>transaction</code>
      </li>
    </ul>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-autovacuum-analyze-scale-factor` (float64)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-autovacuum-naptime` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      In seconds.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-autovacuum-vacuum-cost-delay` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      In milliseconds.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-autovacuum-vacuum-cost-limit` (int64)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-autovacuum-vacuum-scale-factor` (float64)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-autovacuum-work-mem` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      In kilobytes.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-default-transaction-read-only` (bool)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-idle-in-transaction-session-timeout` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      In milliseconds.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-max-connections` (int64)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-search-path` (string)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-shared-buffers` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      In kilobytes.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-postgresql-config-16-statement-timeout` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      In milliseconds.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-public-access` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Either make cluster public accessible or accessible only via private VPC.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-template-disk-size-gibibytes` (int64)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-template-disk-type` (string)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-template-hosts-count` (int64)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-template-resources-platform` (string)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--config-template-resources-preset` (string)
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--id` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Identifier for the resource, unique for its resource type.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--labels` (string->string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Labels associated with the resource.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--labels-add` (string->string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Add values to Labels associated with the resource.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--labels-remove` (string array)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Remove values from Labels associated with the resource.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--name` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Human readable name for the resource.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--parent-id` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Identifier of the parent resource to which the resource belongs.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--resource-version` (int64)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Version of the resource for safe concurrent modifications and consistent reads.<br />
      Positive and monotonically increases on each resource spec change (but *not* on each change of the<br />
      resource's container(s) or status).<br />
      Service allows zero value or current.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--async` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      If set, returns operation id. Otherwise, waits for the operation to complete and returns its resource.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--clear-mask` (string array)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Reset-mask field paths to clear in patch mode. Can be repeated.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--diff` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Show diff of resource before commiting update.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--full` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Update full resource state. Automatically set to true if the --file or argument provided.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--patch` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Update only specified fields.
    </p>
  </div>
</div>

<div>
  <h2>Global Options</h2>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `-h, --help` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Show this message.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `-p, --profile` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Set a profile for interacting with the cloud.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--format` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Output format. Supported values: yaml|json|jsonpath|table|text.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `-f, --file` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Input file. For 'update' commands automatically set --full=true.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `-c, --config` (string)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Provide path to config file.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--debug` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Enable debug logs.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--color` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Enable colored output.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--no-browser` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Do not open browser automatically on auth.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--insecure` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Disable transport security.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--auth-timeout` (duration: 2h30m10s)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Set the timeout for the request including authentication process, default is 15m0s.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--per-retry-timeout` (duration: 2h30m10s)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Set the timeout for each retry attempt, default is 20s.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--retries` (uint)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Set the number of retry attempts, 1 is disable retries, default is 3.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--timeout` (duration: 2h30m10s)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Set the timeout for the main request, default is 1m0s.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--no-check-update` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Suppress check for updates.
    </p>
  </div>

  <div style={{ paddingLeft: "4ch" }}>
    <p>
      `--no-progress` (bool)
    </p>

    <p style={{ paddingLeft: "4ch" }}>
      Suppress progress indicators and spinners.
    </p>
  </div>
</div>

<Expandable title="Input argument JSON Schema">
  <Tabs>
    <Tab title="Full">
      ```json theme={null}
      {              
        "metadata": {                // [required]
                                     // Metadata associated with the cluster. Must include id of the cluster we are going to update.
          "id": string,              // [identifier]
                                     // Identifier for the resource, unique for its resource type.
          "labels": {                // [map]
                                     // Labels associated with the resource.
            string: string                  
          },
          "name": string,            // Human readable name for the resource.
          "parent_id": string,       // [required]
                                     // Identifier of the parent resource to which the resource belongs.
          "resource_version": int64  // Version of the resource for safe concurrent modifications and consistent reads.
                                     // Positive and monotonically increases on each resource spec change (but *not* on each change of the
                                     // resource's container(s) or status).
                                     // Service allows zero value or current.
        },
        "spec": {        // Updated specification for the cluster.
          "bootstrap": {             // [required]
            "user_password": string  // [sensitive] [input_only]
                                     // Password of the bootstrap PostgreSQL user.
          },
          "config": {                 // [required]
            "pooler_config": {        // Configuration of the connection pooler.
              "max_pool_size": int64, // [optional]
                                      // Maximum number of connections in the pool for a single user/database pair.
              "pooling_mode": enum(         // Mode that the connection pooler is working in.
                "POOLING_MODE_UNSPECIFIED",
                "SESSION",                  // Session pooling mode.
                "TRANSACTION"               // Transaction pooling mode.
              )
            },
            "postgresql_config_16": {                       // Configuration parameters for postgres.
              "autovacuum_analyze_scale_factor": double,    // [optional]
              "autovacuum_naptime": int64,                  // [optional]
                                                            // In seconds.
              "autovacuum_vacuum_cost_delay": int64,        // [optional]
                                                            // In milliseconds.
              "autovacuum_vacuum_cost_limit": int64,        // [optional]
              "autovacuum_vacuum_scale_factor": double,     // [optional]
              "autovacuum_work_mem": int64,                 // [optional]
                                                            // In kilobytes.
              "default_transaction_read_only": bool,        // [optional]
              "idle_in_transaction_session_timeout": int64, // [optional]
                                                            // In milliseconds.
              "max_connections": int64,                     // [optional]
              "search_path": string,                        // [optional]
              "shared_buffers": int64,                      // [optional]
                                                            // In kilobytes.
              "statement_timeout": int64                    // [optional]
                                                            // In milliseconds.
            },
            "public_access": bool,    // Either make cluster public accessible or accessible only via private VPC.
            "template": {    // [required]
                             // Resources allocated to PostgreSQL hosts.
              "disk": {                  // [required]
                "size_gibibytes": int64, // [required]
                "type": string           // [required]
              },
              "hosts": {        // [required]
                "count": int64  // [required]
              },
              "resources": {        // [required]
                                    // Reduced msp.v1alpha1.resource.TemplateSpec.
                "platform": string, // [required]
                "preset": string    // [required]
              }
            }
          }
        }
      }
      ```
    </Tab>

    <Tab title="CopyPaste Friendly">
      ```json theme={null}
      nebius msp postgresql v1alpha1 cluster update '
      {              
        "metadata": {           
          "id": "",             
          "labels": {           
            "": ""                  
          },
          "name": "",           
          "parent_id": "",      
          "resource_version": 0 
        },
        "spec": {       
          "bootstrap": {        
            "user_password": "" 
          },
          "config": {                
            "pooler_config": {                                                  
              "max_pool_size": 0,                                               
              "pooling_mode": "pooling_mode_unspecified"|"session"|"transaction"
            },
            "postgresql_config_16": {                  
              "autovacuum_analyze_scale_factor": 0.0,  
              "autovacuum_naptime": 0,                 
              "autovacuum_vacuum_cost_delay": 0,       
              "autovacuum_vacuum_cost_limit": 0,       
              "autovacuum_vacuum_scale_factor": 0.0,   
              "autovacuum_work_mem": 0,                
              "default_transaction_read_only": false,  
              "idle_in_transaction_session_timeout": 0,
              "max_connections": 0,                    
              "search_path": "",                       
              "shared_buffers": 0,                     
              "statement_timeout": 0                   
            },
            "public_access": false,  
            "template": {   
              "disk": {             
                "size_gibibytes": 0,
                "type": ""          
              },
              "hosts": {   
                "count": 0 
              },
              "resources": {   
                "platform": "",
                "preset": ""   
              }
            }
          }
        }
      }
      '
      ```
    </Tab>
  </Tabs>
</Expandable>

<strong>Auto generated on 20-May-2026</strong>
