public async Task <ActionResult <OperationResult <CreateResponse> > > Create(CreateRequest request) { if (!await _roomService.CheckUserCanInvite(request.UserId, request.RoomId)) { return(OperationResult <CreateResponse> .Error("Can't invite to room")); } var room = await _roomService.Get(request.RoomId); Invitation invitaion = await _invitationService.Create(request.UserId, room.Id, request.IsPermanent, room.ExpireAt); return(OperationResult <CreateResponse> .Ok(new CreateResponse { InvitationId = invitaion.Id })); }