# UpdateCustomEntityStates
**EventNames:**
- UpdateCustomEntityStates_Restrictions
- UpdateCustomEntityStates_Pre
- UpdateCustomEntityStates_Post
**Parameters**
| Type | Name |Description |
| ---------------------------------------------------------------------- | ------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| [CustomObject[]](inv:powervault#code_reference/objects/custom_object) | customObjects | The Custom Objects in Vault for which the lifefycle status changes/was changed.
**Restrictions and Pre:**
In these events you can get the future changes through the special properties `_NewState`, `_NewLifeCycleDefinition` and `_NewComment`.
**Post:**
In this event you can retrieve the information from previous events by using the properties `_OldState` and `_OldLifeCycleDefinition`.
*Note:* The Vault API doesn't currently support comments on CustomObjects, so `_OldComment` is always empty. Autodesk reserved this functionality for future use. |
| bool | successful | **Post**:
The information whether the Web Service call was successful or not is only available in the *_Post* event. |
**Examples:**\
UpdateCustomEntityStates_Restrictions:
```powershell
Register-VaultEvent -EventName UpdateCustomEntityStates_Restrictions -Action 'RestrictUpdateCustomEntityStates'
function RestrictUpdateCustomEntityStates($customObjects) {
#Write event code here
}
```
UpdateCustomEntityStates_Pre:
```powershell
Register-VaultEvent -EventName UpdateCustomEntityStates_Pre -Action 'PreUpdateCustomEntityStates'
function PreUpdateCustomEntityStates($customObjects) {
#Write event code here
}
```
UpdateCustomEntityStates_Post:
```powershell
Register-VaultEvent -EventName UpdateCustomEntityStates_Post -Action 'PostUpdateCustomEntityStates'
function PostUpdateCustomEntityStates($customObjects, $successful) {
#Write event code here
}
```