public async Task <ActionResult <ICollection <CardResponse> > > GetDeck([FromRoute] Guid deckId)
        {
            try
            {
                var userId = this.GetUserId();
                if (!await deckRepository.IsUsersOrStandardDeckAsync(deckId, userId).ConfigureAwait(false))
                {
                    return(Forbid());
                }

                var deck = await manager.GetAllCardsFromDeckAsync(deckId).ConfigureAwait(false);

                if (deck == null)
                {
                    return(NotFound());
                }

                return(Ok(deck.Select(CardResponse.FromCard)));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }
            ;
        }