public IActionResult Post([FromBody] UserGroup userGroup)
        {
            try
            {
                if (userGroup == null)
                {
                    _logger.LogInfo("UserGroupController-Post: Input value is null....");
                    return(NotFound());
                }
                _logger.LogInfo("UserGroupController-Post: [Started] assigning group for user in Azure AD B2C");

                //validation of properites

                if (!IsValid(userGroup))
                {
                    _logger.LogInfo("UserGroupController-Post: Invalid data in user group");
                    return(NotFound());
                }

                var client = GraphClientUtility.GetGraphServiceClient();
                if (client == null)
                {
                    _logger.LogError("UserGroupController-Post: Unable to create object for graph client ");
                    return(NotFound());
                }

                var userGroupService = new UserGroupService(_logger, client);
                var assignResult     = userGroupService.AssignUserToGroup(userGroup);

                if (assignResult != null)
                {
                    var groupAssignedResults = assignResult.Result.ToList <GroupAssigned>();

                    if (groupAssignedResults.Any(x => x.IsGroupAssigned == false))
                    {
                        _logger.LogWarn($"UserService-AssignGroupsToUser: Failed to assign one or more group for User Id: {userGroup.User.Id}, see the detail above");
                    }
                }

                _logger.LogInfo("UserGroupController-Post: [Completed] assigning group for user in Azure AD B2C");
                return(Ok());
            }
            catch (Exception ex)
            {
                _logger.LogError("UserGroupController-Post: Exception occured....");
                _logger.LogError(ex);
                throw ex;
            }
        }