def user_videos_paginated_v1(
        self, user_id: str, amount: int = 50, end_cursor: str = ""
    ) -> Tuple[List[Media], str]:
        """
        Get a page of user's video by Private Mobile API

        Parameters
        ----------
        user_id: str
        amount: int, optional
            Maximum number of media to return, default is 0 (all medias)
        end_cursor: str, optional
            Cursor value to start at, obtained from previous call to this method

        Returns
        -------
        Tuple[List[Media], str]
            A tuple containing a list of medias and the next end_cursor value
        """
        items = []
        amount = int(amount)
        user_id = int(user_id)
        medias = []
        next_max_id = end_cursor
        try:
            resp = self.private_request(
                "igtv/channel/", params={"id": f"uservideo_{user_id}", "count": 50}
            )
            items = resp["items"]
        except PrivateError as e:
            raise e
        except Exception as e:
            self.logger.exception(e)
            return [], None
        medias.extend(items)
        next_max_id = self.last_json.get("next_max_id", "")
        if amount:
            medias = medias[:amount]
        return ([extract_media_v1(media) for media in medias], next_max_id)

        Get a page of user's video by Private Mobile API

        Parameters
        ----------
        user_id: str
        amount: int, optional
            Maximum number of media to return, default is 0 (all medias)
        end_cursor: str, optional
            Cursor value to start at, obtained from previous call to this method

        Returns
        -------
        Tuple[List[Media], str]
            A tuple containing a list of medias and the next end_cursor value
        
instagrapi/mixins/media.py