def create_new_or_get_awaiting(request):
    if request.method == 'POST':
        new_game = Game.objects.create(board=json.dumps(
            Game.create_new_board()),
                                       players_count=1)
        my_player = Player.objects.create(user=request.user,
                                          game=new_game,
                                          owner=True,
                                          first=False)
        serializer = GameFullSerializer(new_game)
        return Response(serializer.data, status=201)
    else:
        # only authenticated user can get list of awaiting games
        if request.user.is_authenticated():
            serializer = GameSerializer(Game.get_awaiting_games(), many=True)
            return Response(serializer.data, status=200)
        else:  # unauthenticated user
            return Response(
                {'detail': 'Authentication credentials were not provided.'},
                status=403)