!!! danger "Deprecated Feature"
This feature has been deprecated in NetBox v4.2 and will be removed in a future release. Please consider using the [netbox-branching plugin](https://github.com/netboxlabs/netbox-branching), which provides much more robust functionality.
A staged change represents the creation of a new object or the modification or deletion of an existing object to be performed at some future point. Each change must be assigned to a branch.
Changes can be applied individually via the apply() method, however it is recommended to apply changes in bulk using the parent branch's commit() method.
!!! warning
Staged changes are not typically created or manipulated directly, but rather effected through the use of the [`checkout()`](../../plugins/development/staged-changes.md) context manager.
The branch to which this change belongs.
The type of action this change represents: create, update, or delete.
A generic foreign key referencing the existing object to which this change applies.
JSON representation of the changes being made to the object (not applicable for deletions).