> For the complete documentation index, see [llms.txt](https://docs.ionos.com/cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ionos.com/cloud/go/vm-autoscaling/models/grouppolicyscaleoutaction.md).

# GroupPolicyScaleOutAction

## Properties

| Name               | Type                                                                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Notes                          |
| ------------------ | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| **Amount**         | **float32**                                                         | 'amountType=ABSOLUTE' specifies the absolute number of VMs that are added or removed. The value must be between 1 to 10. 'amountType=PERCENTAGE' specifies the percentage value that is applied to the current number of replicas of the VM Auto Scaling Group. The value must be between 1 to 200. At least one VM is always added or removed. Note that for 'SCALE\_IN' operations, volumes are not deleted after the server is deleted.                                                  |                                |
| **AmountType**     | [**ActionAmount**](/cloud/go/vm-autoscaling/models/actionamount.md) |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **CooldownPeriod** | Pointer to **NullableString**                                       | The minimum time that elapses after the start of this scaling action until the following scaling action is started. While a scaling action is in progress, no second action is initiated for the same VM Auto Scaling Group. Instead, the metric is re-evaluated after the current scaling action completes (either successfully or with errors). This is currently validated with a minimum value of 2 minutes and a maximum of 24 hours. The default value is 5 minutes if not specified. | \[optional] \[default to "5m"] |

## Methods

### NewGroupPolicyScaleOutAction

`func NewGroupPolicyScaleOutAction(amount float32, amountType ActionAmount, ) *GroupPolicyScaleOutAction`

NewGroupPolicyScaleOutAction instantiates a new GroupPolicyScaleOutAction object This constructor will assign default values to properties that have it defined, and makes sure properties required by API are set, but the set of arguments will change when the set of required properties is changed

### NewGroupPolicyScaleOutActionWithDefaults

`func NewGroupPolicyScaleOutActionWithDefaults() *GroupPolicyScaleOutAction`

NewGroupPolicyScaleOutActionWithDefaults instantiates a new GroupPolicyScaleOutAction object This constructor will only assign default values to properties that have it defined, but it doesn't guarantee that properties required by API are set

### GetAmount

`func (o *GroupPolicyScaleOutAction) GetAmount() float32`

GetAmount returns the Amount field if non-nil, zero value otherwise.

### GetAmountOk

`func (o *GroupPolicyScaleOutAction) GetAmountOk() (*float32, bool)`

GetAmountOk returns a tuple with the Amount field if it's non-nil, zero value otherwise and a boolean to check if the value has been set.

### SetAmount

`func (o *GroupPolicyScaleOutAction) SetAmount(v float32)`

SetAmount sets Amount field to given value.

### GetAmountType

`func (o *GroupPolicyScaleOutAction) GetAmountType() ActionAmount`

GetAmountType returns the AmountType field if non-nil, zero value otherwise.

### GetAmountTypeOk

`func (o *GroupPolicyScaleOutAction) GetAmountTypeOk() (*ActionAmount, bool)`

GetAmountTypeOk returns a tuple with the AmountType field if it's non-nil, zero value otherwise and a boolean to check if the value has been set.

### SetAmountType

`func (o *GroupPolicyScaleOutAction) SetAmountType(v ActionAmount)`

SetAmountType sets AmountType field to given value.

### GetCooldownPeriod

`func (o *GroupPolicyScaleOutAction) GetCooldownPeriod() string`

GetCooldownPeriod returns the CooldownPeriod field if non-nil, zero value otherwise.

### GetCooldownPeriodOk

`func (o *GroupPolicyScaleOutAction) GetCooldownPeriodOk() (*string, bool)`

GetCooldownPeriodOk returns a tuple with the CooldownPeriod field if it's non-nil, zero value otherwise and a boolean to check if the value has been set.

### SetCooldownPeriod

`func (o *GroupPolicyScaleOutAction) SetCooldownPeriod(v string)`

SetCooldownPeriod sets CooldownPeriod field to given value.

### HasCooldownPeriod

`func (o *GroupPolicyScaleOutAction) HasCooldownPeriod() bool`

HasCooldownPeriod returns a boolean if a field has been set.

### SetCooldownPeriodNil

`func (o *GroupPolicyScaleOutAction) SetCooldownPeriodNil(b bool)`

SetCooldownPeriodNil sets the value for CooldownPeriod to be an explicit nil

### UnsetCooldownPeriod

`func (o *GroupPolicyScaleOutAction) UnsetCooldownPeriod()`

UnsetCooldownPeriod ensures that no value is present for CooldownPeriod, not even an explicit nil


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ionos.com/cloud/go/vm-autoscaling/models/grouppolicyscaleoutaction.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
