# Update Capacity

This action allows you to build flows that update the capacity values on users associated with a [Queue](/kb/routing/queues.md). This allows you to control the available capacity for a user based on custom logic.

Capacity requires two values: a maximum and an amount used. `max - used` is the available capacity which is used for assignment.

There are two ways of using this action. You can either specify explicit values to use for capacity via `usedCapacityValue` and `maxCapacityValue` or you can "join" data from fields on the User via `usedCapacityValueField` and `maxCapacityValueField`. The "join" method will retrieve the values for the specified field from each User and copy them over to the custom object that associates the User with the Queue.

{% hint style="info" %}
The Users must already be associated with the Queue or they will be ignored.
{% endhint %}

## Inputs

| Name                   | Required | Type        | Description                                                                   |
| ---------------------- | -------- | ----------- | ----------------------------------------------------------------------------- |
| queue                  | Yes      | String      | The queue the users are assigned to                                           |
| users                  | Yes      | List\<User> | List of users to update capacity values for                                   |
| maxCapacityValue       | No       | Long        | Max capacity value for the user for the specified queue                       |
| maxCapacityValueField  | No       | String      | User field from which to retrieve max capacity value for the specified queue  |
| usedCapacityValue      | No       | Long        | Used capacity value for the user for the specified queue                      |
| usedCapacityValueField | No       | String      | User field from which to retrieve used capacity value for the specified queue |


---

# Agent Instructions: 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:

```
GET https://docs.gradient.works/kb/automation-builder-kit-abk/actions/users/updatequeueusercapacityaction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
