Issue:
refactor: change create and update role apis to respond with role info

Resolution:
<think>
PR Context:
- Title: refactor(roles): Add more checks in create, update role APIs and change the response type
- Merged: 2024-02-29T14:11:09Z
- Files changed: 4 files
- Commits: 5 commits

Implementation approach:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [ ] New feature
- [ ] Enhancement
- [x] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
<!-- Describe your changes in detail -->
This PR modifies create and update role APIs. The APIs will now respond with the role created/updated respectively.
This PR also changes the names of predefined roles to snake case.

### Additional Changes

- [x] This PR modifies the API 
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** refactor(roles): Add more checks in create, update role APIs and change the response type (#3896)
Files to modify:


**crates/api_models/src/events/user_role.rs**
  Modify existing code

**crates/router/src/core/user_role/role.rs**
  Modify existing code

**crates/router/src/services/authorization/roles/predefined_roles.rs**
  Modify existing code

**crates/router/src/utils/user_role.rs**
  Add:
    - function: pub::validate_role_groups