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

# /alter/tier

```
URL: http://<db.host>:<db.port>/alter/tier
```

Alters properties of an existing [tier](../../rm/concepts/#storage-tiers)
to facilitate [resource management](../../rm/concepts/).

To disable
[watermark-based eviction](../../rm/concepts/#watermark-based-eviction),
set both *high\_watermark* and *low\_watermark* to 100.

## Input Parameter Description

<ParamField body="name" type="string">
  Name of the tier to be altered. Must be an existing tier group name:  vram, ram, disk\[n], persist, cold\[n].
</ParamField>

<ParamField body="options" type="map of string to strings">
  Optional parameters.

  The default value is an empty map ( \{} ).

  <Expandable title="options">
    <ParamField body="capacity">
      Maximum size in bytes this tier may hold at once, per rank.
    </ParamField>

    <ParamField body="high_watermark">
      Threshold of usage of this tier's resource that once exceeded, will trigger watermark-based eviction from this tier.

      The minimum allowed value is `0`. The maximum allowed value is `100`.
    </ParamField>

    <ParamField body="low_watermark">
      Threshold of resource usage that once fallen below after crossing the *high\_watermark*, will cease watermark-based eviction from this tier.

      The minimum allowed value is `0`. The maximum allowed value is `100`.
    </ParamField>

    <ParamField body="wait_timeout">
      Timeout in seconds for reading from or writing to this resource. Applies to cold storage tiers only.
    </ParamField>

    <ParamField body="persist">
      If *true* the system configuration will be written to disk upon successful application of this request. This will commit the changes from this request and any additional in-memory modifications.

      The default value is `true`.

      The supported values are:

      * true
      * false
    </ParamField>

    <ParamField body="rank">
      Apply the requested change only to a specific rank.

      The minimum allowed value is `0`. The maximum allowed value is `10000`.
    </ParamField>
  </Expandable>
</ParamField>

## Output Parameter Description

The Kinetica server embeds the endpoint response inside a standard response structure which contains status information and the actual response to the query.  Here is a description of the various fields of the wrapper:

<ResponseField name="status" type="String">
  'OK' or 'ERROR'
</ResponseField>

<ResponseField name="message" type="String">
  Empty if success or an error message
</ResponseField>

<ResponseField name="data_type" type="String">
  'alter\_tier\_response' or 'none' in case of an error
</ResponseField>

<ResponseField name="data" type="String">
  Empty string
</ResponseField>

<ResponseField name="data_str" type="JSON or String">
  This embedded JSON represents the result of the /alter/tier endpoint:

  <Expandable title="data_str">
    <ResponseField name="name" type="string">
      Value of input parameter *name*.
    </ResponseField>

    <ResponseField name="info" type="map of string to strings">
      Additional information.
    </ResponseField>
  </Expandable>

  Empty string in case of an error.
</ResponseField>
