PLM 360 has a fairly functional scripting feature, so why can't Vaut?
PLM's scripts are easy to write and run in response to user actions, such as creating an item, or changing lifecycle state.
Since PLM's scripts run server-side, they become part of the core business logic. In contrast, Vault's API is client side, which makes it hard to build custom business logic. For example, setting a propery value on state change is much easier with PLM scripting than with the Vault API.