# StateChangeDenied (/docs/errors/chain/StateChangeDenied)

The contract invoked a state-modifying host function, such as a storage write, transfer, or value-bearing call, while executing in read-only mode. Check whether the enclosing call was made with the read-only flag or from a static context.

Declared by the `Contracts` pallet; it classifies to the semantic code [`not_authorized`](/docs/errors/not-authorized).

## Remediation [#remediation]

Sign with the key or origin that owns the target object, then retry

The same explanation is available in the terminal: `btcli explain StateChangeDenied`.
