public IActionResult Register(
            [FromBody, SwaggerParameter("Moderator's creation payload")]
            ModeratorRegistrationDto newModeratorData)
        {
            try
            {
                _moderatorService.RegisterModerator(newModeratorData);

                var authenticatedModerator = _authenticationService.GetAuthenticatedModerator(new AuthenticationDto
                {
                    Login    = newModeratorData.Nickname,
                    Password = newModeratorData.Password
                });

                return(Ok(authenticatedModerator));
            }
            catch (BaseException ex)
            {
                if (ex is DuplicatedEmailException ||
                    ex is DuplicatedIdentifierException)
                {
                    return(Conflict(
                               new ConflictError(ex)));
                }

                return(BadRequest(
                           new BadRequestError(ex)));
            }
        }