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

# ApplySettingValueChangesCommandRequestInput

> Applies a set of changes to setting values in one transaction: all of them or none, up to 100 changes per call (more is rejected with the code TooManyChanges). A change either sets a value or resets the setting (reset=true); a missing value never resets. This is a command and creates no resource, and a deliberate exception to the rule against batch operations: a page of the settings dialog saves in one transaction because fields depend on each other. Each rejected change names its setting key in extensions.settingKey. Fails with a GraphQL error whose extensions.code is one of SettingPermissionDenied, SettingNotFound, SettingReadOnly, SettingValueInvalid, SettingValueTypeMismatch, SettingScopeNotSupported, SettingsInconsistent or TooManyChanges. Nothing is saved when one change fails. - Request



**Kind**: `input`

## Fields

**`scope`**: `SettingsScope`

For whom the values apply. Defaults to Global.

---

**`userId`**: `ID`

For the scopes User and Workstation: the user. Defaults to the calling user.

---

**`workstation`**: `String`

For the scope Workstation: the name of the workstation. Defaults to the calling workstation.

---

**`changes`**: `[SettingValueChangeInput]!` (required)

The changes, at least one and at most 100. Each setting key may appear once.

---

**`idempotencyKey`**: `String`

Client-supplied idempotency key. When provided, a repeated request with the same key and payload replays the original result instead of re-executing the mutation.

